VC中编译与连接有什么区别

来源:百度知道 编辑:UC知道 时间:2024/06/03 21:14:11

要连接要先编译,如果没编译会连接时会自动编译。举个例子,如果你有两个文件,对一个文件进行编译只是讲这个文件编译成了目标文件.obj,但是另外一个文件没有,需对另外一个文件进行编译,可以观察结果输出框的显示,这时连接便会将两个文件连接在一起,才会将互相调用的函数等联系起来,生成.exe。如果不编译直接点连接,系统自动将两个文件编译,并连接,生成.exe文件。
假设两个文件分别是a.cpp,b.cpp,a调用b的函数:
编译a:
--------------------Configuration: a - Win32 Debug--------------------
Compiling...
a.cpp

a.obj - 0 error(s), 0 warning(s)
然后编译b:
--------------------Configuration: a - Win32 Debug--------------------
Compiling...
b.cpp

b.obj - 0 error(s), 0 warning(s)
然后连接:
--------------------Configuration: a - Win32 Debug--------------------
Linking...

a.exe - 0 error(s), 0 warning(s)

假如编译一个后直接连接:
编译a:无变化
--------------------Configuration: a - Win32 Debug--------------------
Compiling...
a.cpp

a.obj - 0 error(s), 0 warning(s)
直接连接:
--------------------Configuration: a - Win32 Debug--------------------
Compiling...
b.cpp
Linking.