C++ 继承:面向对象代码复用的核心机制
在面向对象编程中,继承是连接基类与派生类的桥梁。它允许我们复用现有代码,同时在此基础上进行扩展。今天我们就来深入聊聊 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 {
:
studentID;
{
cout << name << << studentID << endl;
}
};
{
Student s;
s.name = ;
s.age = ;
s.studentID = ;
s.();
s.();
s.();
;
}


