C++ 继承机制详解
继承(inheritance)是面向对象程序设计中代码复用的核心手段。它允许我们在保持原有类特征的基础上进行扩展,增加方法或属性,从而产生新的类——派生类。这种机制体现了由简单到复杂的认知过程,实现了类设计层次的复用。
1. 继承的概念及定义
1.1 概念理解
在引入继承之前,如果我们设计 Student 和 Teacher 两个类,它们都包含姓名、地址、电话等公共成员,以及各自独有的身份认证逻辑。直接复制这些公共成员会导致代码冗余。
通过提取公共部分为 Person 基类,让 Student 和 Teacher 继承自 Person,即可复用这些成员,大幅提升代码的简洁性和可维护性。
class Person {
public:
void identity() { cout << "void identity()" << _name << endl; }
protected:
string _name = "张三";
string _address;
string _tel;
int _age = 19;
};
class Student : public Person {
public:
void study() {}
protected:
int _num; // 学号
};
class Teacher : public Person {
public:
void teaching() {}
protected:
string title;
};
int main() {
Student s;
Teacher t;
s.identity();
t.identity();
return 0;
}


