首页 > 代码库 > 分离式编译
分离式编译
<c++ primer> p186:
举个例子fact函数的定义位于一个名为fact.cc的文件中,它的声明名为Chapter6.h的头文件中.显然与其他用到fact函数的文件一样,fact.cc应该包含Chapter6.h头文件.另外,我们在名为factmain.cc的文件中创建main函数,main函数将用到fact函数.要生成可执行文件,必须要告诉程序我们用到的代码在哪.如果我们修改了其中一个源文件,那么只需要重新编译那个改动了的文件.大多数编译器提供了分离式编译每个文件的机制,这一过程通常产生一个后缀名是.obj(windows)或者.o(unix)的文件,后缀名的含义是该文件包含对象代码.接下来编译器负责把对象文件链接在一起形成可执行文件.
百度知道:
c++程序使用一对同名的.c和.h文件的意义何在?
h文件中写函数声明,c文件中实现,这样分离之后,如果其他c文件需要调用其中的函数只要包含同名的h头文件即可。吧具体相同功能的函数放置在一个h头文件中声明也有助于分类。项目越大,你如果吧所有函数都写在一个文件中,维护起来就更麻烦了,编译的时候也是一个c文件一个c文件生成中间代码,然后一起链接起来,这样也便于维护。另外还要考虑库的问题,比如你要使用动态库,你如果在h文件中实现函数,那库的意义就不存在了。
分离式编译
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。