为什么只需要包含头文件就可以使用类的实现代码

dmoonbird 2011-06-30 03:35:01
一个疑问:在编写多文件源程序的时候,可以将声明和实现分开在两个文件中这个没有疑问,但是为什么我们只需要在主程序文件中包含相应的声明的头文件就可以实现对实现代码的调用呢?我感觉没有在什么地方调用实现代码啊?到底编译的过程发生了些什么呢?有没有大侠来详细说一说!谢谢!
...全文
436 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2011-06-30
  • 打赏
  • 举报
回复
比如STL库的头文件本身就是源代码。
就想叫yoko 2011-06-30
  • 打赏
  • 举报
回复
链接的时候它会去找的。
再具体就要找书看了
我看过一本 程序员的自我修养 有说这个
至善者善之敌 2011-06-30
  • 打赏
  • 举报
回复
早期的编程语言如Basic、Fortran没有头文件的概念,C++/C语言的初学者虽然会用使用头文件,但常常不明其理。这里对头文件的作用略作解释:
(1)通过头文件来调用库功能。在很多场合,源代码不便(或不准)向用户公布,只要向用户提供头文件和二进制的库即可。用户只需要按照头文件中的接口声明来调用库功能,而不必关心接口怎么实现的。编译器会从库中提取相应的代码。
(2)头文件能加强类型安全检查。如果某个接口被实现或被使用时,其方式与头文件中的声明不一致,编译器就会指出错误,这一简单的规则能大大减轻程序员调试、改错的负担。

64,648

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧