关于编写源程序时分多个文件的问题

来源:百度知道 编辑:UC知道 时间:2024/06/24 18:10:22
有时候在写一个程序时不在一个文件里面写完,而是分成几个文件,每一个文件里面写一部分。这样做有什么好处吗?
多个文件在编译时要先连接,这种连接与在文件开头加上“# include<>”的方式有什么区别吗?
知道的人请告诉我一下,谢谢!!!

大体上基本的C/C++源程序分为两类文件,一类是交给编译器的编译元(compile unit),一般就是c/cpp文件,当然扩展名也没有硬性要求。你硬要把txt文件给编译器它也照样编译,只要txt的内容是源代码就成了。
另一类是被编译元包含的文件,也就是#include的文件,这些文件被直接插入到编译元中相应的#include的位置,所以也成为了编译元的一部分。注意这个时候还没有链接。

编译后每个编译元都会被转化成一个对象文件,VC++里叫.obj。这些对象文件连同外部的库文件被组合成一个可执行文件。这个就是链接的工作。

你不会想看到一个文件几百万行代码,找也找不到,对吧。
include 引入函数声明,链接的是编译后的文件。
include相当于是把那个文件拷贝的那个位置。

分多个文件当然有好处。当你的代码足够大的时候就会跟臃肿,想找的东西找不到。把他们分门别类放好。比如声明变量的。构造子函数的等等。
这样才会有条理。
在include 的时候用<>括起来的是到自带的文件里去找头文件。而用“”引起来的是到你自己定义的头文件里去找的。