C++11 finaly关键字

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

取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

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

Powered by bytekits.com,汇天下文字,成非凡梦想!!!