在 C++ 里写面向对象,继承是绕不开的话题。说白了就是一个类可以把另一个类的属性和方法拿过来用,省得重复写。
继承主要干两件事:代码复用和功能扩展。拿现实来说,学生和老师都属于'人',都有姓名、年龄,也都会吃饭睡觉。先定一个 Person 基类,再让 Student 和 Teacher 去继承它,各自的专属属性(比如学号、工号)就能分开加了。
基本语法
语法很直白:
class 派生类名 : 继承方式 基类名 {
// 派生类的成员
};
- 继承方式 管着基类成员在派生类里的访问权限,有 public、protected、private 三种。
- 基类名 就是被继承的那个,也叫父类。
- 派生类名 就是子类。
来个最基本的例子——Person 是基类,Student 公有继承它:
#include <iostream>
#include <string>
using namespace std;
// 基类:人
class Person {
public:
string name;
int age;
void eat() {
cout << name << " 正在吃饭" << endl;
}
void sleep() {
cout << name << " 正在睡觉" << endl;
}
};
// 派生类:学生,公有继承 Person
class Student : public Person {
public:
// 派生类新增属性:学号
studentID;
{
cout << name << << studentID << endl;
}
};
{
Student s;
s.name = ;
s.age = ;
s.studentID = ;
s.();
s.();
s.();
;
}


