如果我有三个类:
ClassA ClassB ClassC
它们都有相互导入的导入语句,即ClassC导入ClassB和ClassB仅导入ClassA。
考虑到这种设计,ClassC是否可以自动访问ClassA?
发布于 2011-03-10 00:47:55
首先:在任何情况下,import/include都不会让一个类访问另一个类,它只会让A类知道B类。
第二:可见性由您导入headers的位置决定。如果您确实在ClassB报头中导入了ClassA报头,然后在ClassC报头中导入了ClassB报头,则ClassC知道ClassA。但是如果在实现文件中导入它,那么答案是否定的。
编辑:应该注意,最好在头文件中进行类转发声明,然后在实现文件中包含适当的类转发声明。
https://stackoverflow.com/questions/5248859
复制相似问题