最近学习C++,对前向声明不是很明白,所以查了很多资料终于搞懂,在此分享一下。
首先要明白:
1.C++中类必须先定义,才能够实例化。
2.两个类需要相互引用形成一个“环形”引用时,无法先定义使用。这时候需要用到前向声明 。
3.前向声明的类不能实例化。
第一种办法:
A.h文件
A.cpp文件
B.h文件
B.cpp文件
这种方法只能是在A.h中用到B类,那么就包含B类的头文件,这样可以!如果同时在B.h中用到A类,包含A类的头文件时,编译不通过,因为形成环形引用。
第二种方法,即前向声明
A.h文件
A.cpp文件
B.h文件
B.cpp文件
原文链接: https://www.cnblogs.com/wufengv5/archive/2013/05/12/3073830.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/88152
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!