友元类不仅可以是单向的,而且可以是双向的。这意味着不仅类A可以是类B的友元,而且类B也可以是类A的友元,即互为友元类。这一般是考虑到两个类之间的互动关系。
C++ Primer Plus讲了个原则,即内联友元函数原型中用到友元类对象时一定要在相应类的声明式下边进行定义,因为只有这样这个函数才能知道那个类长成啥样,从而做相应的处理。非内联函数就不同了,因为它们包含了头文件,而头文件一定是写在最上面的。
互为友元类
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。