首页 > 编程语言 >c++中final修饰的使用

c++中final修饰的使用

时间:2024-11-09 22:49:02浏览次数:3  
标签:c++ final Huawei2 public Huawei1 修饰 Honor

final可以用来修饰类和修饰类的虚函数

final修饰类时

final修饰的类就不能再被继承了,断绝了后代。

class Huawei1 {
public:
	Huawei1(){};
};

class Huawei2 final: public Huawei1 {
public:
	Huawei2() {};
};

class Honor : public Huawei2 {
public:
	Honor() {};
};

class Honor : public Huawei1 {
public:
	Honor() {};
};

    看上面的代码,我们知道之前的华为是荣耀的老总,我们定义为Huawei1,后面荣耀从华为独立出去了,我们定义此时的华为是Huawei2并且用final修饰,用final修饰就表示现在Huawei已经不能再被任何子类继承了,不论你是荣耀还是小米还是苹果,都不能继承。 但是Huawei1并没有做出final修饰,所以荣耀依旧可以和之前旧华为部门合作,但和huawei2已经没关系了,想去继承huawei2就会报错。

final修饰类的虚函数

需要注意的是final修饰函数时只能修饰虚函数,当虚函数被final修饰时这个方法在子类中就不能被重写了,但与修饰类时不同,这个方法依旧可以被子类继承和使用,就是不能重写

标签:c++,final,Huawei2,public,Huawei1,修饰,Honor
From: https://blog.csdn.net/hxj_686/article/details/143507330

相关文章

  • C++基础学习2-数据类型
    ////数据类型:////计算机语言-写程序-解决生活中的问题////必须有能力来描述生活中的问题////购物商城-上架商品,价格-15.6元-小数////年龄50岁-整数////C语言-浮点数(小数点)////-整型//////a////'a'-字符a////intmain()//{// //char=字符类型// charch='a';......
  • C++高级编程(9)
    九、STL模板库1.C++函数模板函数模板是一个独立于类型的函数,可产生函数特定类型的版本。通过对参数类型进行参数化,获取有相同形式的函数体。它是一个通用函数,它可适应一定范围内的不同类型对象的操作。函数模板将代表着不同类型的一组函数,它们都使用相同的代码,这样可以......
  • C++高级编程(8)
    八、标准IO库1.输入输出流类1)非格式化输入输出2)put#include<iostream>#include<string>​usingnamespacestd;intmain(){stringstr="123456789";for(inti=str.length()-1;i>=0;i--) {cout.put(str[i]);//从最后一个字......
  • C++基础学习1
    //写代码//1.写出主函数(main函数)//可能写出1-500行代码//如何执行呢?-C语言的代码是从主函数的第一行开始执行的!//主函数=main函数//所以C语言代码中需要有main函数,main函数属于是入口,没有入口就无法执行。//int=函数的返回类型,int是整型的意思(是整数的意思)//main=函数名......
  • 在 C++ 中,实现线程同步主要有以下几种常见方法
    互斥锁(Mutex)原理:互斥锁用于保护共享资源,确保在同一时刻只有一个线程能够访问被保护的资源。当一个线程想要访问共享资源时,它首先尝试获取互斥锁。如果锁已经被其他线程持有,那么该线程会被阻塞,直到锁被释放。一旦获取到锁,线程就可以安全地访问共享资源,访问结束后再释放锁,以便其......
  • 在C++中,条件变量的等待操作是如何实现的?
    在C++中,条件变量的等待操作主要通过std::condition_variable类来实现,其等待操作涉及到与互斥锁的配合使用,以下是详细的实现过程:包含必要的头文件首先需要包含<condition_variable>和头文件,因为条件变量std::condition_variable的使用需要与互斥锁(如std::mutex)协同工作,同时还......
  • PHP、Java、Python、C、C++ 这几种编程语言都各有什么特点或优点?
    相信每一个计算机科班出身的同学或许都有这样的经历:在大三的某一天,仿佛打通了全身筋脉一般把三年的所学:“数电里的与非门——[计算机体系结构]——汇编语言——C语言——C++语言——Java语言”。所有知识全部串联了起来。所有这些语言的出现都仿佛都有了必然性和追根溯源的历史......
  • devc++配置opengl库
    由于VisualStudio太占内存,所以用老古董devc++配图形学的环境。用到的文件下载链接Step1:建项目首先打开dev点文件--新建--项目--Multimedia--OpenGLc++/c都行(我这里用的c++)名称最好用英文,然后确定,保存的地方也最好没有中文路径Step2:添加库文件找到DEV-C++的安装目录(右键......
  • C++入门(C语言语法改进篇)
    目录C++第一个程序命名空间namespace的价值namespace定义命名空间的使用C++输入输出缺省参数全缺省参数半缺省参数函数重载参数类型不同参数个数不同C++第一个程序C++的文件名称后缀为.cpp,C++包含了C语言的大部分语法,所以在.cpp文件里面我们依然可以使用C语言编程......
  • C++输出奇特的三角形
    题目描述请根据下列规律输出奇特的图形,是一个被*包围了的@三角形n=3**@***@@@*@@@@@输入输入一个整数(3<=n<10)输出输出n行的图形样例输入 3样例输出 **@***@@@*@@@@@#include<iostream>usingnamespacestd;intmain(){ intn,j=1,t=0; cin>>n;......