先声明再定义的必要性
来源:互联网 发布:mac qq可以远程协助吗 编辑:程序博客网 时间:2024/05/16 13:51
类A定义 在A.h中 实现在A.cpp
类B定义 在B.h中 实现在B.cpp
在类A中需要引用类B的类型
而类B也需要引用类A的类型
这样 如果在类A.h加如#include"B.h"
在类B.h加入#include"A.h"
会出现什么结果呢?
这样 A,B会处在一种无限嵌套的死局之中。
编译器,会报告 类未定义等错误。
解决的办法:
在类A中不加入 #include'B.h'
而是在A中声明下类B 即:class B; 这样类A就可以先使用类B类型了
只在类B中加入#include"A.h"
举例如下:
A.h
Class B;
Class A
{
Public:
void cal(B b); // A的成员函数 使用B类型数据作为其参数
}
B.h
#include"A.h"
class B
{
public:
A a; // A类型数据a 作为B类的成员函数
}
这样就不会出错了:>
- 先声明再定义的必要性
- 关于变量定义时初始化的必要性
- 将 析构函数 声明为 虚函数 的必要性
- 变量的声明定义
- 变量的声明,定义
- 先定义方针再定义过程
- 先定义数据再定义函数
- 声明、定义以及定义的位置
- 复杂的声明和定义
- 变量的定义和声明
- 定义和声明的区别
- 声明和定义的区别
- 声明和定义的区别
- c++的声明和定义
- 声明与定义的区别
- 变量的声明和定义
- C++ 的 声明&定义&初始化
- 变量的定义与声明
- 如何使用LoadRunner进行winSocket的测试
- 开始→运行→输入的命令集锦
- 终于买下了
- 搜索引擎语法汇总
- 剩女别号
- 先声明再定义的必要性
- 55r6
- CSSHack 选择器
- AS3中的数字运算问题
- 希望在程序中内置WPF Designer
- 编程修养(1)
- TOMCAT配置JSP引擎和页面
- 硬盘检测工具 HD Tune Pro
- 丁磊:来也匆匆去也匆匆的首富