C++ 继承机制详解
面向对象编程的三大特性之一是继承。在封装的基础上,继承允许我们复用代码并建立类之间的层次关系。本文将深入探讨 C++ 中的继承方式、访问权限、同名隐藏规则以及派生类的四个默认成员函数行为。
继承的定义与基本语法
假设大学里有学生和教师,作为人都有姓名、住址和电话,但教师有职称,学生有学号。我们可以将共性封装在 Person 基类中,差异封装在 Student 和 Teacher 派生类中。
#include <iostream>
#include <string>
using namespace std;
class Person {
public:
// 身份认证
void identity() {
cout << "void identity()" << _name << endl;
}
protected:
string _name = "张三"; // 姓名
string _address; // 地址
string _tel; // 电话
private:
int _age = 18; // 年龄
};
class Student : public Person {
public:
void study() {
// ...
}
protected:
int _stuid; // 学号
};
class Teacher : public Person {
public:
void teaching {
}
:
string title;
};
{
Student s;
Teacher t;
;
}


