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.();
;
}


