C++11 finaly关键字
2023-06-06
6
0
C++由于继承的存在,故父类中的虚函数都可以在子类中进行重载,那有没有一种方法可以禁止某个函数的重载了?这时我们可以使用关键字final来实现。
如以下代码:
class A
{
public:
virtual void print()
{
}
};
class B : public A
{
public:
void print() final;
};
void B::print()
{
}
class C : public B
{
public:
void print() //此出报错,无法重载final函数
{
}
};
子类B继承于A,对print函数进行了重载,并且指名是最后一次的重载,这时类C继承于类B,再次重载print函数时,会发生错误-无法重载final函数。