一、final
final 是 C++11 新增的一个标识符
主要用于在类定义时,可以显式强调不能继承
防止我们在使用类的过程中
有意或者无意为该类创建子类
二、举个栗子
1、类继承
看以下代码
#include <iostream>
using namespace std;
class A {};
class B: public A{};
int main(int argc, char ** argv)
{
return 0;
}B 类是 A 类的派生类
接着加上标识符 final

可以看到 B 类不能继承 A 类型
2、虚函数
final不仅能标识类,也能标识虚函数
#include <iostream>
using namespace std;
class A {
public:
virtual void fun(){}
};
class B: public A{
virtual void fun() {}
};
int main(int argc, char ** argv)
{
return 0;
}一切正常
接着加上标识符 final

当然,纯虚函数就没啥意义啦
#include <iostream>
using namespace std;
class A {
public:
virtual void fun() = 0;
};
class B: public A{
virtual void fun() {}
};
int main(int argc, char ** argv)
{
return 0;
}三、_End
1
版权声明:本文为Lvvou1024原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。