1、重新生成,会导致所有cpp文件重新编译,然后连接。
2、使用生成,只会对需要重新编译的cpp文件,进行编译。
a、修改cpp文件方法实现,只需要重新编译该cpp文件
b、修改h文件的接口部分,包含该头文件,并且调用接口的cpp文件,都需要重新编译
c、修改h文件的实现部分,包含该头文件,并且需要知道头文件中的类占有多大空间的cpp文件,都需要重新编译。
3、C++没有做到实现与接口完全分离,因为h文件有实现部分。为什么不做到接口与实现分离呢?
做不到,因为定义类的对象时,需要知道该类占有多大空间。
4、因此,对于那些不需要知道类占有多大空间的cpp文件,当修改h文件的实现部分时,不需要重新编译。哪些情况不需要知道类占有多大空间呢?
a、类的引用或者指针
b、方法声明中的形参表和返回类型,在方法定义时,才需要知道类占有多大空间。