C++多重继承与面向对象编程
需积分: 35 104 浏览量
更新于2024-08-23
收藏 2.25MB PPT 举报
"多重继承-吉林大学c++课件"
这篇资料主要讲解了C++中的一个重要概念——多重继承,这是面向对象编程的一个特性。在C++中,一个类可以从多个基类继承特性,这就是多重继承。在提供的代码示例中,定义了三个类:Master、Phd和M_p。Master类代表硕士,有id和practice(实践)两个成员变量,Phd类代表博士,有id和paper(论文)两个成员变量。M_p类则同时继承了Master和Phd,这表明M_p类的对象拥有Master和Phd类的所有属性。
```cpp
class Master {
public:
Master(string p){practice = p;}
int id; string practice;
};
class Phd{
public:
Phd(string p){paper = p;}
int id;
string paper;
};
class M_p:public Master,public Phd {
public :
M_p(string p,string q):Phd(q),Master(p){}
float avg;
};
```
M_p类的构造函数通过初始化列表先调用了Phd的构造函数,然后调用了Master的构造函数,确保了正确地初始化所有继承过来的成员。在main函数中,创建了一个M_p类型的对象a,并设置了它的属性,如实践(practice)和论文(paper),同时也赋值了一个avg属性。
此外,资料还提到了C++的历史和发展,以及它相对于C语言的改进。C++由贝尔实验室的Bjarne Stroustrup在1980年代初期基于C语言发展而来,起初被称为“带类的C”,后来正式命名为C++。C++不仅保留了C语言的全部特性,还引入了面向对象编程的支持,包括类、继承、多态等,使得程序设计更加模块化和可重用。C++是一种混合型语言,既是过程型的,也是面向对象型的,允许开发者根据需求选择合适的编程范式。
在面向对象编程中,"对象"是核心概念,它是现实世界实体的抽象,包含了数据(属性)和操作数据的过程(方法)。而"继承"则是对象之间共享特性的机制,通过继承,子类可以重用基类的属性和行为,提高了代码的复用性和可维护性。在这个例子中,M_p类就利用了继承来实现Master和Phd类的特性整合。
课程还强调了理解和掌握C++语言的重要性,以及通过学习C++提高编程和调试能力的目标。同时,课程的教师邮箱和推荐教材也被提及,便于学生进一步学习和交流。课堂纪律和上机要求也提醒学生要重视实践和理论结合,为后续的学习打下坚实基础。
2009-06-05 上传
2009-06-05 上传
2009-06-05 上传
2009-06-05 上传
2009-06-05 上传
2009-06-05 上传
2010-09-04 上传
getsentry
- 粉丝: 28
- 资源: 2万+
最新资源
- BBTNewsKit:bt新闻中心的新闻发布工具包~
- R2CNN-DFPN_RPN_HEAD_AROI-Linux:【Linux版本】Linux上的论文“通过多尺度旋转区域卷积神经网络的任意方向船的位置检测和方向预测”的实现(基于anthor的源代码)
- arxiv-papers-mobile:ArXiv Papers,一个React Native应用程序,目前可用于Android。 搜索,下载和保存arXiv科学论文
- KrantikariQA:基于InformationGain的知识图系统问答
- Excel模板基础体温表格基础体温表.zip
- dise-oweb2
- PhDthesis:博士论文的文件和分析
- uCOS-III模板_STM32F103_UCOSIII移植_工程模板_uCOS-III
- cooking:我最喜欢的食谱
- rock_paper_scissors_300_300_3.zip
- labper:智能实验室管理系统(使用Django构建)
- opencv-haar-classifier-training
- 动物园管理员
- RLsilde:有关加强学习的一些注意事项
- ogre-sample:Ogre3D CMake 项目模板
- My_BSc_Diploma_Thesis