hpp使用的好处:
就是当作为第三方工具包的时候,如果别人要使用你这个第三方工具包
可以不用编译生成.so或者.a文件以进行链接
而使用h和cpp的结构
则编译的时候h,而cpp需要编译成.o文件以供后续的链接操作。
当xx2.cpp中包含xx1.cpp文件时(例:#include “xx1.cpp”),会报重定义错误,在xx1.obj和xx2.obj中都可以找到xx1.cpp中函数的定义,导致会报重定义错误。
当xx2.cpp中包含xx1.cpp文件时(例:#include “xx1.cpp”), 编译一次之后,将xx1.cpp改名为xx1.h再次编译时,还是会报重名错误,是因为上次编译时,xx1.cpp中的函数名已经编译到xx2.obj中,下次编译时函数名仍然包含在xx2.ob中,可换个名字编译,可顺利通过。