C++中前向声明

最近学习C++,对前向声明不是很明白,所以查了很多资料终于搞懂,在此分享一下。

首先要明白:

1.C++中类必须先定义,才能够实例化。

2.两个类需要相互引用形成一个“环形”引用时,无法先定义使用。这时候需要用到前向声明 。

3.前向声明的类不能实例化。

 

第一种办法:

A.h文件

C++中前向声明

A.cpp文件

C++中前向声明

B.h文件

C++中前向声明

B.cpp文件

C++中前向声明

这种方法只能是在A.h中用到B类,那么就包含B类的头文件,这样可以!如果同时在B.h中用到A类,包含A类的头文件时,编译不通过,因为形成环形引用。

 

第二种方法,即前向声明

 A.h文件

 

C++中前向声明

A.cpp文件

C++中前向声明

 

B.h文件

C++中前向声明

 

B.cpp文件

C++中前向声明

原文链接: https://www.cnblogs.com/wufengv5/archive/2013/05/12/3073830.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    C++中前向声明

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/88152

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月9日 下午11:27
下一篇 2023年2月9日 下午11:28

相关推荐