c++ - 是 '#include "file2.c "' different from ' gcc file1.c file2.c'?

标签 c++ c compilation linker

如果您不打算单独重新编译包含的文件,是否有任何理由更喜欢链接器命令而不是包含指令?

附言如果重要的话,我实际上关心的是 C++ 和 g++,但我认为 gcc 作为通用编译器会更容易被识别。

最佳答案

Is there any reason to prefer linker commands over include directives

是的。如果到处包含实现 (.c) 文件,您将会遇到严重的麻烦。遇到臭名昭著的“符号 _MyFunc 的多重定义”链接器错误...

(顺便说一句,这也被认为是不好的风格/做法,一般来说,只包含头文件。)

关于c++ - 是 '#include "file2.c "' different from ' gcc file1.c file2.c'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14079784/

相关文章:

c++ - 加倍流

c++ - 当我们有 new/delete 时,为什么要使用 malloc/free?

c++ - "EXC_BAD_ACCESS"使用数组时 C++

交叉编译的二进制文件不存在?

c - 为什么 C 中需要 volatile?

c - 编译C程序出错

java - 在 Ant 中,<sourcepath> 和 <src> 元素有什么区别?

xcode - 如何在同一源文件中有条件地编译特定于版本的 Swift(1.2 vs 2.0)代码?

c++ - 如何使用递归在 .txt 中写入多行?

c - 用户模式钩子(Hook)的检测