<分区>
相对于What are the advantages of using more then 1 code file for a project? (C++)我想知道不使用多个代码文件是否有(技术或其他)优势,例如,C++ 项目?
拆分成几个文件只是人为的事吗?就可见性/优化而言,机器一次处理所有这些不是更好吗?
<分区>
相对于What are the advantages of using more then 1 code file for a project? (C++)我想知道不使用多个代码文件是否有(技术或其他)优势,例如,C++ 项目?
拆分成几个文件只是人为的事吗?就可见性/优化而言,机器一次处理所有这些不是更好吗?
最佳答案
将所有内容放入单个文件中会破坏文件级静态和匿名命名空间(并避免外部声明)的目的。
不过,它对编译器并没有多大好处。对于优化之类的事情,他们只需将需要全局可见性的部分实现到链接器中(大多数当前的链接器都包含此类优化/代码生成功能)。
它将(或至少可以)减少完整重建的总时间。使用单独的源文件,您将结束为包含它的每个源文件重新编译每个 header 。只有一个源文件,你只能编译一次(但预编译的头文件可以而且通常确实会减少它到它可能很少重要的程度,至少如果你使用它们)。
从实际的角度来看,它通常会缩短构建时间,而且通常会非常严重。大多数人都非常努力地尝试隔离事物,因此对程序的一部分进行更改只需要重新编译程序的一小部分。对于真正微小的程序之外的任何东西,每次您进行任何更改都必须重新编译所有内容将是完全难以管理的——对于一个体面大小的程序,您的构建时间从几秒变为几分钟。
关于c++ - 在一个代码项目中_不_使用多个文件有什么好处吗? (C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15580691/