分离式编译

为了允许编写程序时按照逻辑关系将其划分开,C++语言支持所谓的分离式编译。

分离式编译允许我们把程序分割到几个文件中去,每个文件独立编译。

编译和链接多个源文件

fact 函数的定义位于fact.cc的文件中,声明位于Chapter6.h的头文件中,factMain.cc的文件中创建main函数,main函数将调用fact函数。

要生成可执行文件,必须告诉编译器代码在哪里:

$ CC factMain.cc fact.cc # 生成 factMain.exe 或 a.out
$ CC factMain.cc -o main # 生成 main 或 main.exe
  • CC是编译器的名字
  • $是系统提示符
  • #后面是命令行下的注释语句

接下来运行可执行文件,就会执行定义的main函数。

如果改动了一个源文件,只需要重新编译改动了的文件。

大多数编译器提供了分离式编译每个文件的机制,这一过程通常会产生一个后缀名是.obj(Windows)或.o(UNIX)的文件,后缀名的含义是该文件包含对象代码。

编译器负责把对象文件链接在一起形成可执行文件:

$ CC -c factMain.cc # 生成 factMain.o
$ CC -c fact.cc # 生成 fact.o
$ CC factMain.o fact.o # 生成factMain.exe 或 a.out
$ CC factMain.o fact.o -o main # 生成 main 或 main.exe

 

posted @ 2019-07-02 11:37  CodeWithMe  阅读(575)  评论(0)    收藏  举报