c++中的final说明符

final是c++11引入的说明符,可以修饰在类或者类成员函数尾部。

final修饰类时,表示该类不能被继承。

cpp 复制代码
class A final 
{
};

上例表明,类A是一个不能被继承的类。

cpp 复制代码
class A {
public:
  virtual void bar();
};

class B final: public A {
public:
  void bar() override; 
};

类B继承了类A,类B是一个不能被继承的类,因为它有final修饰符。

final修饰类成员函数时,声明了成员函数是一个虚函数,且该虚函数不可在派生类中被覆盖。

cpp 复制代码
class A {
public:
  virtual void bar();
};

class B : public A {
public:
  void bar() override final; 
};

类B继承了类A,类B也可以被其它类继承。但是类B中的成员函数bar(),不能被它的子类重写,因为该函数有final修饰。

相关推荐
Dxy123931021611 小时前
Python 去除 HTML 标签获取纯文本
开发语言·python·html
洛的地理研学11 小时前
Python下载并处理MOD13A3植被指数数据
开发语言·python
humcomm11 小时前
Java 新特性2026年5月速览
java·开发语言
xiao_li_ya11 小时前
C++学习日记1(`*`的理解、const关键词)
开发语言·c++
码力斜杠哥12 小时前
Rust初习录(6)Rust的 if 玩法
开发语言·python·rust
聆风吟º12 小时前
【C标准库】深入理解C语言 isalpha 函数详解:判断字符是否为字母
c语言·开发语言·库函数·isalpha
WL_Aurora12 小时前
Java字符输入全攻略
java·开发语言
茉莉玫瑰花茶12 小时前
LangGraph 拓展核心知识点
开发语言·windows·python
老鱼说AI13 小时前
现代 LangChain 开发指南:从 LCEL 原理到企业级 RAG 与 Agent 实战
java·开发语言·人工智能·深度学习·神经网络·算法·机器学习
Michelle802313 小时前
25大数据 11-1 函数
开发语言·python