C++学习记录-面向对象-继承方式

一、继承的语法

语法: class 类名 :继承方式 父类

示例:

1
2
3
class chara :public charactor{

};

二、继承的方式

公共public,保护protected,私有private

继承方式 基类public成员 基类protected成员 基类private成员 概括
public 仍为public 仍为protect 无法继承 基类非私有成员在子类中访问属性不变
protected 变为protected 变为protected 无法继承 基类非私有成员在子类中变为保护成员
private 变为private 变为peivate 无法继承 基类非私有成员在子类中变为私有成员

三、一些冷知识

  • 继承时,父类的所有属性都会继承到子类中,只是私有属性被编译器隐藏了,无法看到也无法访问,表现为“没有继承”

  • 当创建子类时,先执行父类的构造函数,再执行子类的构造函数

    当析构子类时,先执行子类的析构函数,再执行父类的析构函数

  • 构造函数和析构函数都不能被继承

  • 基类的友元对从该基类派生的类型没有特殊访问权限,即友元关系不能被继承