相关疑难解决方法(0)

有没有办法防止在子类中重写方法?

是否有人知道C++中的语言特性或技术,以防止子类过度使用父类中的特定方法?

class Base {
public:
    bool someGuaranteedResult() { return true; }
};

class Child : public Base {
public:
    bool someGuaranteedResult() { return false; /* Haha I broke things! */ }
};
Run Code Online (Sandbox Code Playgroud)

尽管它不是虚拟的,但仍然允许这样做(至少在我正在使用的Metrowerks编译器中),所有你得到的是关于隐藏非虚拟继承函数X的编译时警告.

c++ overriding metrowerks

28
推荐指数
3
解决办法
2万
查看次数

5
推荐指数
1
解决办法
1641
查看次数

标签 统计

c++ ×1

c++-cli ×1

c++11 ×1

metrowerks ×1

overriding ×1

sealed ×1