C++ 继承机制详解
继承(Inheritance)是面向对象程序设计实现代码复用的核心手段。它允许在已有类特性的基础上进行扩展,增加方法或属性,从而产生新的类。原来的类称为基类(父类),新类称为派生类(子类)。相比函数层次的复用,继承实现了类设计层面的复用,有助于构建清晰的层次结构。
一、继承的概念及定义
1.1 继承的概念
通过继承,我们可以提取公共逻辑到基类中,避免重复代码。例如,学生和老师都有姓名、年龄等属性,可以抽象为 Person 类,然后让 Student 和 Teacher 继承它。
class Person {
public:
void identity() { /* ... */ }
protected:
string _name = "peter";
int _age = 18;
};
class Student : public Person {
public:
void study() { /* ... */ }
protected:
int _stuid;
};
class Teacher : public Person {
public:
void teaching() { /* ... */ }
protected:
string _title;
};
1.2 继承的定义
1.2.1 定义格式
继承方式有三种:public、protected、private。默认情况下,使用 class 关键字时默认为 private 继承,使用 struct 时默认为 public 继承。实际开发中建议显式写出继承方式。







