待补充
//虚函数 override final default delete 在C++11新增
struct Base
{
public:
virtual void foo() final {};//标注final
};
//子类继承父类函数重载
class SubClass final :public Base
{
public:
// override显示的告诉这个是虚函数,在后期维护的时候可以方便看到,用于提醒
void foo() override{};//b报错
};
// final 如果在类后面标注告诉编译器,这是最后一个类,无法在被继承的类
//final 在虚函数后面,告诉派生类无法在重载这个类的虚函数了
class subclass2 :public SubClass //报错
{
public:
};
//default
class Base01
{
public:
Base01() = default;//保留默认构造析构拷贝函数
Base01(int i) //如何没有default 则默认没有无参构造
{
}
};
//delete
class Base02
{
public:
Base02() = delete;//禁止编译器参数默认构造
Base02(int i)
{
}
};
int main()
{
return 0;
}