码迷,mamicode.com
首页 > 其他好文 > 详细

先声明再定义的必要性?.xml

时间:2014-10-17 23:14:55      阅读:211      评论:0      收藏:0      [点我收藏+]

标签:style   http   color   io   os   ar   使用   sp   数据   

????类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类的成员函数
}
?
?
?
?
?

这样就不会出错了:>

本文使用?书画小说软件?发布,内容与软件无关,书画小说软件?更惬意的读、更舒心的写、更轻松的发布。

先声明再定义的必要性?.xml

标签:style   http   color   io   os   ar   使用   sp   数据   

原文地址:http://www.cnblogs.com/shuilan0066/p/4032206.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!