C++ 继承入门:从基础概念到默认成员函数
在面向对象编程中,实现多个类时总遇到'重复定义'的问题?比如 Student 和 Teacher 类都要写姓名、地址、身份认证函数,改一处就要两处同步修改。这就是没用到 C++ 的继承机制。
继承是面向对象复用代码的核心,能让子类直接'继承'父类的成员和方法,再扩展自己的专属功能。
一、继承的概念与定义
继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要手段,它允许我们在保持原有类特性的基础上进行扩展,增加方法(成员函数)和属性(成员变量),这样产生新的类,称派生类。
先想一个场景:Student 和 Teacher 都需要'姓名、地址、身份认证',但 Student 有学号、Teacher 有职称。如果各自写一遍,很多代码会变得冗余——继承就是把**'公共部分'**抽成父类(基类),子类(派生类)直接复用。
1. 继承的核心概念
- 父类(基类):存放公共成员的类,比如
Person类(包含姓名、地址、identity身份认证函数)。 - 子类(派生类):继承父类并扩展专属成员的类,比如
Student(加学号)、Teacher(加职称)。 - 本质:子类是父类的'扩展',能直接用父类的公共/保护成员,不用重复定义。

2. 继承的定义格式
关键是'继承方式 + 父类名',比如 class Student : public Person。

有了上面的知识储备后,我们简单来看一段代码示例来加深理解(注意看注释):
#include <iostream>
using namespace std;
// 基类/父类
class Person {
// 公共成员:子类和类外都能访问
public:
// 进入校园等场合需要的身份认证
void identity() { cout << "void identity()" << _name << endl; }
{ cout << _age << endl; }
:
string _name = ;
string _address;
string _tel = ;
:
_age = ;
};
: Person {
:
{
cout << << _tel << endl;
}
:
_stuid;
};
: Person {
:
{ cout << << _tel << endl; }
:
string title;
};
{
Student s;
Teacher t;
s.();
t.();
s.();
t.();
;
}














