final关键字可以:
- 将class或struct类别声明为不可继承
- 将成员函数声明为不可重载
override关键字:
- 声明为重载
- 若不支持重载,则无法通过编译
default关键字:
- switch默认分支
- 声明构造,析构为默认
delete关键字:
- 是操作符
- 禁止生成默认函数
struct Base
{
virtual void foo(int);
virtual void bar() final;
}
struct Sealed final: Base
{
Sealed() = default; // default ctor
virtual void foo(int) override; // INVALID
virtual void foo(double) override; // OK
}
struct Something1: Base
{
using Base::Base; // deriving ctor
Something1() = delete; // forbid
void bar(); // INVALID
}
struct Something2: Sealed // INVALID
{
}
本文详细介绍了C++编程语言中的final、override、default和delete四个关键字,它们分别用于禁止类继承、指定重写、定义switch默认分支以及禁用默认函数的生成,对于理解和使用C++的多态性和控制类行为至关重要。
2014

被折叠的 条评论
为什么被折叠?



