C++有没有类似 Java 的 final class

2020-10-21 14:59:09 +08:00
 QBugHunter
RT
我有一个类,不希望被继承,因此我希望,如果有人继承这个类的话,编译器能在编译阶段直接报错,请问 C 艹能不能实现这项功能?
1985 次点击
所在节点    C++
3 条回复
codehz
2020-10-21 15:09:40 +08:00
有,只不过 final 关键字要加在类名的后面(
https://en.cppreference.com/w/cpp/language/final
QBugHunter
2020-10-21 15:11:52 +08:00
@codehz
谢谢
opensail
2020-10-21 16:31:21 +08:00
class A final{ /*将类标记为 final,禁止继承该类*/
public:
virtual void func() final; /*使用 final 关键字修饰虚函数,禁止该虚函数重写*/
};
class B : public A {
public:
virtual void func() override;
};

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/717118

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX