纯虚函数和普通虚函数的比较
纯虚函数的显著特性是 文件.h的声明中末尾 “ = 0”,必须要求在子类中予以实现方法,要求很严格。
如果在派生类中未予以实现,会在编译时明显报出错误,cannot instantiate abstract class(不能将抽象类实例化)
virtual int Temp(int i) = 0 ;
普通虚函数要求在基类中予以实现方法,使用继承和派生时,可以不单独实现,要求不严格。
如果只声明为具体实现,会和普通函数一样报错。
virtual int Temp(int i,int p); int Cxx::Temp(int i,int p) { return i+p+10; }
以上总结,如果想在基类中偷懒不想实现具体函数,将虚函数变为纯虚函数,那么就一样要在子类中予以实现。
也可以把这特性当作重要特性,要求子类必须予以实现。
posted on 2018-03-11 21:58 DaQuanQuan 阅读(163) 评论(0) 收藏 举报
浙公网安备 33010602011771号