C++书上写的是不能把变量定义在头文件中,头文件只能用来声明,为什么MFC中把变量都定义在头文件中

 我来答
傲世修罗王
2010-01-24 · TA获得超过1084个赞
知道小有建树答主
回答量:1034
采纳率:0%
帮助的人:728万
展开全部
那只是建议,并不是绝对的
通常情况头文件是只存放声明,而.cpp文件存放定义
但也有例外,比如模板类。

如果头文件中存放变量的定义,而其他多个cpp文件包含了这个头文件,可能会导致该变量被重复定义而出现链接错误
逍遥公虫
2010-01-24 · TA获得超过174个赞
知道答主
回答量:190
采纳率:0%
帮助的人:0
展开全部
不把变量定义放在头文件中是为了不让多个cpp文件包括该头文件时产生重复定义,出现错误,这是个好习惯,尽量遵守
另外,你说的MFC把变量都放在头文件中,我怎么没发现?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xunxunnuaa
2010-01-24 · TA获得超过651个赞
知道小有建树答主
回答量:548
采纳率:0%
帮助的人:440万
展开全部
我告诉你为什么,实际上是可以吧定义也写在头文件的,可是单工程变大了了,一旦你修改了某个函数,所有包含了该头文件的cpp文件都要重新编译,链编,可是假如是吧声明写在h文件定义写在cpp文件,不修改申明只修改定义的话只会重新编译这个cpp文件,很明显的可以看出二者的效率差距。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式