gpt4 book ai didi

c++ - 是否可以防止成员函数被重新定义?

转载 作者:太空狗 更新时间:2023-10-29 20:46:12 25 4
gpt4 key购买 nike

我希望 B 类不能重新定义其基类 A 的成员函数之一。有没有办法做到这一点?

编辑:

感谢您的回答。我也可以防止非虚拟成员函数被覆盖吗?

最佳答案

如果您的意思是不允许派生类覆盖其基类的虚函数,C++11 引入了一种使用 final 的方法virt-specifier(标准中的称呼):

struct B{
virtual void f() final;
};

struct D : B{
void f(); // error: 'B::f' marked 'final'
};

不过,我不知道哪些编译器支持它。可能是 GCC 4.7 和 Clang。

关于c++ - 是否可以防止成员函数被重新定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8759455/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com