CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

找到问题所在,但是不明白原因,请大家帮我看看

楼主wilfred_2002()2003-12-04 16:58:02 在 VC/MFC / 基础类 提问

当我在CMyView.h里面声明   class   CMyDialog后  
  为什么还要在CMyView.cpp里面包含头文件CMyDialog.h,为什么不直接在CMyView.h里面包含头文件CMyDialog.h,这样做有什么好处? 问题点数:0、回复次数:6Top

1 楼fuxf(布衣)回复于 2003-12-04 17:35:53 得分 0

不在CMyView.cpp里面包含头文件CMyDialog.h,则编译器找不到CMyDialog这个东东  
  包含在CMyView.h其效率不及在.cpp中高Top

2 楼LoverOfVCpp(VCpp爱好者)回复于 2003-12-04 23:50:20 得分 0

应该在在CMyView.h里面包含头文件CMyDialog.h也可以,这只是个人习惯问题。Top

3 楼Behard(我爱天安门)回复于 2003-12-05 00:29:21 得分 0

这个是使预编译更有效Top

4 楼cllr(寂寞2001)回复于 2003-12-05 01:19:24 得分 0

如果你在.h中包含的话,要注意循环包含的问题,就是A类.h包含B类.h,B类.h包含A类.h,这样编译时就会提醒你找不到声明。如果你循环包含了,就需要在.h中加class   X;Top

5 楼blue2moon(蓝狐)回复于 2003-12-05 08:54:00 得分 0

一般来讲,我都是将*.h包含在.cpp里面,具体原因还没研究!Top

6 楼Bandry(菜鸟-舍我其谁)回复于 2003-12-05 11:12:27 得分 0

在.h里面包含头文件,如果你包含的那个头文件的类的实现改变了,则与它相关的类都要重新编译,这样增加了你的程序编译时间;而如果在.h里面使用提前声明,而在.cpp里面包含该类头文件,则每次改变包含类的实现时,只需重新编译改变的那个类,其他包含该类的cpp都无需重新编译,节省了编译时间Top

相关问题

  • 看不明白什么原因
  • 真是不明白是什么原因???
  • 谁能明白下面错误的原因,帮帮我!!!
  • 不明白原因的问题???希望各位帮忙!!!
  • 这是什么原因。搞不明白了。数据库update的问题????
  • 一个关于winsock的程序,出错的原因我很不明白??????
  • 如何得到用FindWindow找到的窗口所在的程序??
  • 如何通编程找到ip所在地理位置信息?
  • 谁能帮我找到原因,重谢
  • PHP奇怪现象,高分求原因所在

关键词

  • 编译
  • 文件
  • cpp
  • cmyview
  • cmydialog
  • 类
  • 问题
  • 改变

得分解答快速导航

  • 帖主:wilfred_2002

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo