gpt4 book ai didi

c++ - C++编译过程

转载 作者:搜寻专家 更新时间:2023-10-31 00:22:04 24 4
gpt4 key购买 nike

我将非常感激,如果有人能真正解释当我按下 BUILD 按钮时我的编译器究竟做了什么,并且编译器开始编译我所有的 .h 和 .cpp 文件这个过程究竟是如何进行的(我有什么在目标文件中?),为什么我会问这样的问题?我试图从 Meyers 的书中了解“最小化文件之间的编译依赖性”是什么意思,大约有 50 种具体方法......(希望你知道这本书),他解释了抽象基类和处理类是什么意思,正如我的讲师向我解释的那样,我不需要包含过多的 .h 文件,仅此而已,任何关于编译过程的链接也将不胜感激,在此先感谢您的帮助

最佳答案

在进行完整编译时,编译器会依次读取每个.cpp 文件。对于给定的 .cpp 文件,它将读取 #include 指令引用的每个文件,递归地编译代码。当它编译下一个源文件时,它将读取该源文件中用 #include 引用的文件。

当您进行任何更改并进行构建时,如果 .cpp 文件中的 #include 指令引用的任何文件发生更改,则 .cpp 文件将被重新编译,就像.cpp 文件本身已更改。

不必要的 #include 指令因此有两个代价:首先,编译器在编译时必须读取和处理更多文件,其次,它增加了你的 .cpp 文件需要重新编译的机会,即使没有它实际用途发生了变化。

关于c++ - C++编译过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3760332/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com