1.当父类和子类都有虚函数时,如果通过
animal ---父类 dog----子类
如果 animal *ani=new dog;
delete ani;
此时的delete并不会把子类析构掉,所以为了解决这个问题:
需要将父类的析构函数定义为virtual函数,这样就可以把new出来的子类析构掉。
2.当一个函数有虚函数时,请将析构函数定义为virtual函数。--------就是为了解决以上问题---------在delete父指针时会去调用子类中的析构函数
3.对于高层不依赖底层,这个相当于利用了纯虚函数来作为高层和底层的中间接口,在连接层的类里用纯虚函数来定义高层要用的接口,然后底层来实现。---------这想法TMD太好了。。。佩服,佩服