C++编程教程:面向对象与派生类详解

需积分: 9 1 下载量 28 浏览量 更新于2024-08-24 收藏 3.43MB PPT 举报
这段内容主要介绍了谭浩强版《C++程序设计》教材中的一个章节,关注的是C++中的“声明公用派生类”和“继承与派生”概念。在C++中,"Graduate" 类是基于"Student" 类的派生类,通过关键字"public"表明它是一个公有派生类,意味着父类的所有公共成员(包括成员函数和公共属性)都会被子类继承。`Graduate` 类添加了一个额外的私有成员变量`pay` 和一个构造函数,用于初始化学生的基本信息和工资。 `Graduate::Graduate(int n, string nam, float s, float p): Student(n, nam, s), pay(p)` 这行代码展示了派生类的构造函数,它通过初始化列表调用基类`Student` 的构造函数,并同时设置`pay` 成员变量。`void Graduate::display()` 是一个输出函数,用于显示`Graduate` 对象的详细信息,包括学生的编号、姓名、分数和工资。 在`main` 函数中,首先定义了一个`Student` 类的对象`stud1`,然后定义了一个`Graduate` 类的对象`grad1`。通过指针`pt`,我们能够动态地将对象从`Student` 类转换到`Graduate` 类,并调用它们各自的`display` 函数,这体现了C++中的多态性,即不同类型的对象可以共享相同的接口。 这段内容也提到了C++语言的发展历程,特别是C++与C的关系。C++由C语言发展而来,增加了面向对象编程特性,如继承、封装和多态等,使得软件开发更为高效,尤其适合处理大规模复杂系统。C++不仅支持传统的面向过程编程,还提供了面向对象的设计模式,这使得它成为一种功能强大且灵活的编程语言。 总结来说,这部分内容涵盖了C++语言的基础知识,特别是面向对象编程的核心概念,以及C++如何在继承机制下扩展原有C的功能,为开发者提供了更丰富的工具来构建高效的软件系统。