在代码项目中使用多个文件有什么好处吗?(c++)
Are there any advantages of _not_ using multiple files in a code-project? (C++)
相对于在一个项目中使用多个代码文件的优势是什么?(c++)我想知道是否有(技术或其他)不使用多个代码文件的优点,例如,c++项目?
分割成几个文件只是人类的事情吗?在可见性/优化方面,机器一次处理所有这些不是更好吗?
将所有内容放在一个文件中会破坏文件级静态和匿名命名空间的目的(并避免外部声明)。
这对编译器并没有什么好处。对于诸如优化之类的事情,它们只是实现需要在链接器中实现全局可见性的部分(并且大多数当前的链接器都包含这样的优化/代码生成功能)。
它将(或至少可以)减少完整重建的总时间。如果使用单独的源文件,则需要为包含它的每个源文件重新编译每个头文件。如果只有一个源文件,您只需编译这些文件一次(但是预编译的头文件可以并且通常会将其减少到可能很少影响的程度,至少如果您使用它们的话)。
从实际的角度来看,它通常会极大地影响构建时间。大多数人都非常努力地将事情隔离开来,所以对程序的一部分进行更改只需要重新编译程序的一小部分。对于任何比真正的小程序更大的程序,每次进行任何更改时都必须重新编译所有内容,这将是完全无法管理的——对于一个适当大小的程序,构建时间从几秒钟更改为几分钟。
这实际上是一个微妙的破碎问题。只有当文件满足另一个问题中回答的标准之一时,即当文件或项目"足够大",更易于分割时,才有利于分割文件。如果不符合这些标准,就没有优势。所以这个问题的答案是"如果拆分文件的理由都不适用,那就不要拆分。"即使是中型项目,他们通常也会这样做。为了给出一个具体的例子,"Hello World"通常应该保存在一个文件中。
如果您想将程序作为电子邮件附件发送,那么您只需要附加一个文件。
如果一切都在一个编译单元中,编译器可能会做更多的优化,这就是为什么sqlite3以这种方式分发的原因。
好吧,如果你看看在一个项目中使用多个代码文件的优势是什么?(c++),你会发现拆分代码有很多好处。否则这些都将失去。
使用而不是分割代码的唯一好处是如果你在一个非常小的项目上工作。这样把所有的东西放在一个文件里就方便多了。
大多数足够大的项目有多个文件。你只是在成长的过程中感到对它们不可抗拒的需求。谁真的喜欢前后滚动超过1000行来做一些编辑?
是的,这是一件人道的事情。我们必须把东西分开才能理解它们。我们需要在更小的代码块上工作
- 为不同配置设置MSVC_RUNTIME_LIBRARY的正确方法是什么
- 警告处理为错误这里有什么问题
- 什么时候调用组成单元对象的析构函数
- #定义c-预处理器常量..我做错了什么
- 努力将整数转换为链表。不知道我在这里做错了什么
- C++我的数学有什么问题,为什么我的代码不能正确循环
- 什么时候在C++中返回常量引用是个好主意
- 当在同一名称空间中有两个具有相同签名的函数时,会发生什么
- C++避免重复声明的语法是什么
- c++库的公共头文件中应该包含什么
- 问题:什么是QAbstractItemView::NoEditTriggers的反面
- 有什么方法可以遍历结构吗
- 当类在C++中定义时,有什么方法可以"register"类吗?
- ifstream什么都没读
- 在C++中,将大的无符号浮点数四舍五入为整数的最佳方法是什么
- 实现无开销push_back的最佳方法是什么
- C++从另一个类访问公共静态向量的正确方法是什么
- "throw expression code" 1e7 >返回 d 是什么?投掷标准::overflow_error( "too big" ) : d;意味 着?
- 我应该使用什么来代替void作为变体中的替代类型之一
- 有没有什么方法可以使用一个函数中定义的常量变量,也可以由c++中同一程序中的其他函数使用