C++11教程
+ -

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函数。

0 篇笔记 写笔记

C++11 finaly关键字
C++由于继承的存在,故父类中的虚函数都可以在子类中进行重载,那有没有一种方法可以禁止某个函数的重载了?这时我们可以使用关键字final来实现。如以下代码:class A{public: virtual void print() { }};class B :......
作者信息
我爱内核
Windows驱动开发,网站开发
好好学习,天天向上。
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!