C++面向对象编程:从C到C++与派生类
需积分: 10 184 浏览量
更新于2024-08-24
收藏 3.36MB PPT 举报
"谭浩强C++教程 - 面向对象编程、继承与派生"
在C++编程中,派生类是面向对象特性的重要组成部分,它允许我们创建一个新的类,该类继承自一个已存在的类,即基类。在这个例子中,派生类`Student1`是从`Student`类派生出来的。派生类可以访问基类的公共和受保护成员,并且可以添加新的数据成员和成员函数。
`Student1`类的声明如下所示:
```cpp
class Student1: public Student // 以public方式声明派生类Student1
{
public:
void display_1()
{
cout << "age: " << age << endl; // 引用派生类的私有成员,正确
cout << "address: " << addr << endl; // 引用派生类的私有成员,正确
}
private:
int age; // 派生类增加的新私有成员
string addr; // 派生类增加的新私有成员
};
```
这里,`public`关键字表明`Student1`是公有派生,这意味着它可以从基类`Student`那里继承所有的公有和受保护成员。`display_1()`函数是`Student1`特有的,用于显示`Student1`对象的`age`和`addr`私有成员。
在`main`函数中,我们创建了一个`Student1`类型的对象`stud`,并可以分别调用基类`Student`的`display`函数(如果有的话)和派生类`Student1`的`display_1`函数来展示不同层面的信息:
```cpp
int main()
{
Student1 stud; // 定义派生类Student1的对象stud
// 其他代码,如对象初始化和函数调用
return 0;
}
```
在C++程序设计中,面向对象的特性包括类、对象、封装、继承和多态。这里,`Student`类可能是包含学生基本信息的基类,而`Student1`是对其进行扩展,增加了`age`和`addr`字段,使得`Student1`能够表示更具体的学籍信息。
C++程序设计的学习通常分为几个部分,例如:
1. **基本知识**:包括C++的初步知识,数据类型与表达式等,这是学习C++的基础。
2. **面向过程的程序设计**:涉及程序设计的基本概念,如函数、预处理、数组、指针和自定义数据类型。
3. **基于对象的程序设计**:讲解类和对象的概念,以及如何通过它们构建程序。
4. **面向对象的程序设计**:涵盖继承与派生,多态性与虚函数,这些都是面向对象编程的核心特性。
在C++中,从C语言演进到C++是为了应对大型软件开发的需求,C++通过引入面向对象编程提高了代码的复用性和可维护性。C++的增强体现在面向对象机制的引入和对C语言功能的扩展,使得程序员可以根据需求选择合适的编程范式。面向对象编程的核心是封装、继承和多态,这些概念有助于构建模块化的、易于理解和维护的软件系统。
2010-10-16 上传
2011-01-04 上传
2014-08-04 上传
2024-06-20 上传
2023-07-28 上传
2023-07-28 上传
2023-07-01 上传
2024-06-20 上传
2023-12-12 上传
深井冰323
- 粉丝: 24
- 资源: 2万+
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载