c++ - 为什么函数的定义与声明分开?

标签 c++ c gcc

为什么函数的定义不和它们的声明一起写在同一个“some.h”文件中?如果我们不将“some.h”文件与“some.c”文件分开,会发生什么情况?

最佳答案

所以一个人知道他需要知道的最低限度。 (这使得编译速度更快,名称冲突的机会更少,管理代码的能力更容易等)如 this comment 中所述作者:Kerrek SB:如果混合使用源代码和代码,则很难将大项目分成模块。

例如,您可以编译一个库(包含定义)并将其与声明( header )一起提供给您的客户(他们只关心接口(interface)),他无需知道源代码就可以使用它的实现。 (这样你也可以隐藏实现细节)

没有标题,他不知道库中可用函数的用法。因此,尽管不是强制性的,但建议将声明和定义分开。

关于c++ - 为什么函数的定义与声明分开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36932839/

相关文章:

c++ - Linux 上 codelite、unittest++ 和 g++ 的链接器错误

python - SWIG:如何使用 %apply 返回结构? 'No typemaps defined' 警告

c - 优化版本代码中的 SIGSEGV

c++ - typename 必须在模板内指定吗?

python - 在 OpenCV 中,有些方法只存在于 c++ 中,如何在 python 中做同样的事情?

c++ - 使用 std::cout 格式化二进制文字

c - 计算字符串长度时字符串文字和指针的用法

iphone - 在 objective-c 中忽略方法的返回值是否有效?

gcc - 用特定值填充向量 (SSE2) 的最快方法。模板友好

c - 使用 GNU Make 同时构建调试和发布目标(扩展)