C++编程 类继承的问题 高手请进

classA;classB;classC;classD;四个类,A是BC的基类B:publicA要在B的.h文件里包含一下A的.h吧C:publicA同理也要在C的.h文... class A ;
class B;
class C;
class D;
四个类,
A是B C的基类 B : public A
要在B的.h文件里包含一下A的.h吧
C : public A 同理也要在C的.h文件里包含一下A的.h吧
然后D : public A , public B 也要在D的.h文件里包含一下C的.h和D的.h吧

问题来了 为什么我只在B的.h里面包含一下A的.h 剩下的C里没有包含A 的.h
D里没有包含B C 的.h 编译也能通过呢 为什么 我想不明白!
展开
 我来答
zhccsd
2013-01-19 · TA获得超过4042个赞
知道大有可为答主
回答量:1347
采纳率:66%
帮助的人:1026万
展开全部
CC++编译过程首先是预编译,就是把带有预编译处理的语句放在一边,加#include的作用就是声明这个头文件要插入预编译头中,预编译头中已经存在头文件了就不需要再重复include
再比如MFC工程中有个默认的app的头文件,里面只include了resource头文件,但是里面可以写CString等MFC类
追问
但是呢 我已经build an run 了 出来的结果也没有错误
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zjfaok
2013-01-19 · TA获得超过6808个赞
知道大有可为答主
回答量:4146
采纳率:62%
帮助的人:1924万
展开全部
目测是在main函数所在文件同时包含了四个头文件,使这些文件都连为一个文件了……
追问
那为什么我 在B 前面不加A的.h 还不行呢 只要在B里面加A的.h  其他的地方 像C  和 D 中 都不用加了  坐等
追答
我又没看到你的源代码,怎么知道你是怎么写#include的……
从你说的情况判断,大概你是在main函数所在文件里面按顺序包含了B C D的头文件,而在B的头文件中包含了A的头文件,因此造成了A B C D的类声明依次排列,编译器看到的也就成了正确的代码……
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
司徒一菲
2013-01-19 · TA获得超过4637个赞
知道大有可为答主
回答量:8629
采纳率:0%
帮助的人:3398万
展开全部
一流的员工
{

员工();
虚拟雇员159();
集(****);
得到(* *);
私人如下:
字符串名称;
整数ID;
}
类管理:公共雇员
{
公众: BR />经理();
虚拟管理器();
......
私人
诠释SAL;
}
每小时类:公共雇员
{

......
私人
诠释工资;
诠释小时;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3df8970f5
2013-01-19 · TA获得超过919个赞
知道小有建树答主
回答量:1268
采纳率:50%
帮助的人:1135万
展开全部
没分没钱,围观一下
C/C++感兴趣的欢迎来百度贴吧玩。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
千江月success
2013-01-19 · TA获得超过827个赞
知道小有建树答主
回答量:1031
采纳率:100%
帮助的人:987万
展开全部
zjfaok 正解,顶
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式