当前位置: 首页 > news >正文

C++类的多重继承演示

一个派生类可以继承多个基类

以下代码演示派生类zzj继承两个基类people、student

#include <iostream>using namespace std;class people
{
private:int m_age;
public:people(int age);void print();~people();
};people::people(int age)
{cout << "people 构造" << endl;m_age = age;
}void people::print()
{cout << "年龄:" << m_age << endl;
}people::~people()
{cout << "people 析构" << endl;
}class student
{
private:int m_score;
public:student(int score);void print();~student();
};student::student(int score)
{cout << "student 构造" << endl;m_score = score;
}void student::print()
{cout << "分数:" << m_score << endl;
}student::~student()
{cout << "student 析构" << endl;
}class zzj : public people, public student
{
private:string m_name;
public:zzj(int age, int score, string name);void print();~zzj();
};zzj::zzj(int age, int score, string name) : people(age), student(score)
{cout << "zzj 构造" << endl;m_name = name;
}void zzj::print()
{people::print();student::print();cout << "姓名:" << m_name << endl;
};zzj::~zzj()
{cout << "zzj 析构" << endl;
}int main()
{zzj z(19, 98, "ZZJ");z.print();return 0;
}

需要注意75、76行在调用两个基类print函数时出现了两个基类成员函数重名

需要加上类名和域解析符::来区分

 运行结果如下:


http://www.mrgr.cn/news/68165.html

相关文章:

  • 信息安全工程师(80)网络安全测评技术与工具
  • 【学习笔记】SAP ABAP——OPEN SQL(一)【INTO语句】
  • 全面解析:网络协议及其应用
  • 汽修行业员工培训SOP的智能化搭建
  • 什么是干部民主测评系统?如何选择合适的系统?
  • Java 网络编程(一)—— UDP数据报套接字编程
  • 一文透彻了解电容
  • 机器学习(五)——支持向量机SVM(支持向量、间隔、正则化参数C、误差容忍度ε、核函数、软间隔、SVR、回归分类源码)
  • 解决中文乱码问题:常见原因与解决方案
  • 【我的世界】宠物不认我了?怎么更换主人?(Java版)
  • STM32外设应用研究
  • 【系统集成项目管理工程师教程】第14章 收尾过程组
  • 【系统集成项目管理工程师教程】第13章 监控过程组
  • 电路原理:电阻桥。
  • 深入掌握高级SQL技巧
  • leetcode hot100【LeetCode 78. 子集】java实现
  • 二分查找习题篇(上)
  • Nextjs14记录
  • 认识软件测试
  • ◇【论文_20160610】Generative Adversarial Imitation Learning 【附录 A】
  • 大模型学习笔记------CLIP模型解读与思考
  • NAT网络工作原理和NAT类型
  • Docker启动gitlab后22端口被占用如何解决
  • Swift 开发教程系列 - 第9章:错误处理
  • 秒懂Linux之序列化及反序列化
  • 【VR】PICO 手部追踪 steamvr内无法识别,依旧识别手柄的解决方案