平时大家写程序的时候,很多情况只会注意编译和运行,只知道点了这两个按钮的作用,却不知道其背后的一些机制,再次做出讲解。
在C++程序当中,我们创建的文件默认后缀为cpp,当我们对该cpp文件点击编译后,经过编译器处理会被翻译为obj文件(目标文件),这样便把程序员写的代码翻译为了二进制机器语言,机器便可以明白,但这个时候仍然没有生成可执行文件(exe),那么怎样才可以运行我们写的代码呢?
这个时候便需要进行链接(Link),当我们点击运行按钮,便在进行编译的基础上进一步进行了链接,完成链接需要链接器的帮助,目标文件经过链接后才会变成可执行文件。
在很多时候,我们所写的源文件并不只有一个,可能在一个源文件中我们实现的是做饭的功能,而在另一个源文件中实现的是吃饭的功能,只不是在其中一个源文件当中有一个main函数作为程序的入口罢了,但我们想要实现一个从做饭到吃饭的过程就需要这些源文件一起来协作进行,这个时候链接就是我们必不可少的步骤,通过链接可以让这些源文件联合起来,进行“打包”,它将所有二进制形式的目标文件和系统组件组合成一个可执行文件。
以上就是链接与编译的关系和作用。