pre{
line-height:1;
color:#9f1d66;
background-color:#cfe4e4;
font-size:16px;}.sysFunc{color:#5d57ff;font-style:italic;font-weight:bold;}
.selfFuc{color:#8e0ed3;}
.bool{color:#008000;}
.condition{color:#008000;font-weight:bold;}
.key{color:#440080;}
.var{color:#008000;font-style:italic;}
.Digit{color:#000080;font-weight:bold;}
.includePre{color:#661d9f;}
.operator {color:#fd1a53;font-weight:bold;}
类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类的成员函数
}
这样就不会出错了:>
本文使用 书画小说软件 发布,内容与软件无关,书画小说软件 更惬意的读、更舒心的写、更轻松的发布。