聚合全网技术文章,根据你的阅读喜好进行个性推荐
C++不允许的,只允许重复声明,但不允许重复实现
然后标准库可以使用了条件宏
降低编译的耦合度。。
如果你把实现也放在头文件中,那么当你改动实现的时候,所有包含该头文件的源文件都要被重新编译。
野鬼其实说得很准了,我来补充个实践的方法。编译器都可以生成预处理之后的代码输出到文件的,看看编译器的帮助文档就能知道做法了。如果你用的是VS(VC)的话,在项目配置里应该是可以设置。这样就可以看到预处理之后的代码了。我觉得,看到预处理之后的代码,再看看野鬼说的,应该就明白#include是干啥的了(注意,不要去#include一些stdio之类的.h,只要#include自己写的.h文件就好,那些.h内容太多了)。
一、二楼说的都对,给你总结一下:
C++不允许的,只允许重复声明,但不允许重复实现
然后标准库可以使用了条件宏
降低编译的耦合度。。
如果你把实现也放在头文件中,那么当你改动实现的时候,所有包含该头文件的源文件都要被重新编译。
引用来自“中山野鬼”的答案
引用来自“随便取个名字可以吗”的答案
引用来自“中山野鬼”的答案
引用来自“中山野鬼”的答案
引用来自“随便取个名字可以吗”的答案
引用来自“中山野鬼”的答案
野鬼其实说得很准了,我来补充个实践的方法。编译器都可以生成预处理之后的代码输出到文件的,看看编译器的帮助文档就能知道做法了。如果你用的是VS(VC)的话,在项目配置里应该是可以设置。这样就可以看到预处理之后的代码了。我觉得,看到预处理之后的代码,再看看野鬼说的,应该就明白#include是干啥的了(注意,不要去#include一些stdio之类的.h,只要#include自己写的.h文件就好,那些.h内容太多了)。
引用来自“刘地”的答案
C++不允许的,只允许重复声明,但不允许重复实现
然后标准库可以使用了条件宏
一、二楼说的都对,给你总结一下: