final:

1.一个类或结构体不希望被继承

class Base final
{};class Derive : public Base
{};

报错信息如下:

1.cpp:34:7: error: cannot derive from ‘final’ base ‘Base’ in derived type ‘Derive’class Derive : public Base

2.一个虚函数不希望被重写

class Base
{
public:virtual void Fun() final{}
};class Derive: public Base
{
public:// 错误,不能覆盖基类的函数。virtual void Fun() override{ }
};

报错如下:

1.cpp:35:22: error: overriding final function ‘virtual void Base::Fun()’virtual void Fun() final

override

首先,重写的概念是,

子类重新定义父类中有相同名称和参数的虚函数

如果加了override关键字,同名函数是不能改变参数的

如下:

class A
{
public:virtual void print() {}
};class B
{
public:virtual void print(int a) override {}
};

结果:

1.cpp:23:18: error: ‘virtual void B::print(int)’ marked ‘override’, but does not override
     virtual void print(int a) override {}

c++ override final关键字相关推荐

  1. override,final的使用,两者都是针对虚函数,也就是说要有virtual关键字

     1.override,final的使用,两者都是针对虚函数,也就是说要有virtual关键字 #include <iostream> //C++中的final和override主要是 ...

  2. 继承extends ,this super final 关键字,abstract抽象类,override方法重写

    继承extends 私有成员不能被继承  总结:子类方法中,使用变量的原则是:就近原则 1 package review06; 2 /* 3 私有成员不能被继承 4 子类和父类有同名的成员变量:在子类 ...

  3. 《从零开始学Swift》学习笔记(Day 47)——final关键字

    在类的定义中使用final关键字声明类.属性.方法和下标.final声明的类不能被继承,final声明的属性.方法和下标不能被重写. 下面看一个示例: 1 2 3 4 5 6 7 8 9 10 11 ...

  4. final关键字的这8个小细节,你get到几个?

    前言 大家好,我是狂聊君. 今天来聊 final 关键字,因为最近在看的几本书都讲到了 final 关键字,发现好多小细节自己都忽视了,抽空总结了一下,分享给大家. 正文 final关键字是一个常用的 ...

  5. php中final关键字

    1.final关键字(不能修饰属性,即变量) a.希望一个类不被其他类来继承(出于安全性) 案例1: <?phpfinal class A{}class B EXTENDS A //此用法为错误 ...

  6. 深入理解Java中的final关键字

    深入理解Java中的final关键字 http://www.importnew.com/7553.html Java中的final关键字非常重要,它可以应用于类.方法以及变量.这篇文章中我将带你看看什 ...

  7. Java面试题,深入理解final关键字

    final关键字 final的简介 final可以修饰变量,方法和类,用于表示所修饰的内容一旦赋值之后就不会再被改变,比如String类就是一个final类型的类. final的具体使用场景 fina ...

  8. 【Kotlin】Kotlin 类的继承 一 ( 类继承基本方式 | final 关键字 | 子类主构造函数 | 子类次构造函数 )

    文章目录 I . 类继承基本方式 II . 使用 final 禁止类继承 / 方法重写 III . 父类没有主构造函数 IV . 父类有主构造函数 V . 父类构造函数与子类构造函数总结 I . 类继 ...

  9. Java的this、super和final关键字

    this:(this表示当前对象) 用类名定义一个变量的时候,定义的只是一个引用,外面可以通过这个引用来访问这个类里面的属性和方法. 在类的方法定义中使用this关键字代表使用该方法的对象的引用 当必 ...

最新文章

  1. oracle11g ora00838,管理oracle11g內存設置 解決ora-02097 ora-00838 ora-00845報錯問題
  2. 2017英国AI形势报告:认知鸿沟、新商业模式和当下的挑战
  3. python多线程没用_python的多线程到底有没有用?
  4. 怎么把加载图标去掉_怎样在PCB上绘制图标
  5. 线性表的动态顺序存储和实现(C语言实现)【线性表】(4)
  6. 岗位内推 | 微软亚洲研究院智能多媒体组招聘实习生
  7. mysql用户 11_MySQL-快速入门(11)用户管理
  8. 八种经典排序算法总结
  9. maven构建可执行jar包
  10. java山地自行车怎么看型号_怎么看捷安特山地车型号 请问有知道捷安特自行车型号...
  11. linux内核驱动子系统,linux内核中的MFD子系统
  12. 软硬一体打天下,英特尔在 AI 上做了些什么?
  13. Tests for normality正态分布检验
  14. 2019年上半年工作总结
  15. 如何修改鼠标指针的样式
  16. 02C++对C的增强
  17. vue安装使用v-chart时报错解决方案
  18. C++与C#相比,哪个更适合开发大型游戏?
  19. 微信小程序如何申请注册教程
  20. 李奎元:说说那些征信模型(Z计分模型、巴萨利模型和A值模型)

热门文章

  1. 【cocos2d-x从c++到js】02:解决在vs中修改js源文件无效
  2. NHibernate one-to-one
  3. 基于消息机制的万能框架
  4. Nginx前端设置反向代理,后端Apache如何获取访客的真实IP,结合PHP。
  5. 传统服务化(SOA)与微服务(Micro Service)的融合之道
  6. python实战===图片转换为字符的源码(转)
  7. 编译安装LNMP Centos 6.5 x64(6.6 x64) + Nginx1.6.0 + PHP5.5.13 + Mysql5.6.19
  8. LAMP中apache的配置步骤
  9. Html.ActionLink 几种重载方式说明及例子
  10. silverlight实现2D人物动画