随笔分类 - C++
摘要:纯虚函数与抽象类 含有纯虚函数的类,称为抽象基类,不可实列化。即不能创建对象,存在的意义就是被继承,提供族类的公共接口。 笔记
阅读全文
摘要:验证vptr分布初始化 vptr指针是从父类逐渐指向子类的虚函数表 笔记
阅读全文
摘要:证明vptr指针的存在 笔记
阅读全文
摘要:多态_virtual /* 父类指针定义对象,当基类与派生类存在相同成员函数,编译器设置为基类中的版本, 为静态多态/静态链接/早绑定:函数调用在程序执行前就准备好了! 在父类相同函数前加 virtual 则编译器看指针的内容,而不是类型! 子类定义对象,当基类与派生类存在相同成员函数,调用子类!
阅读全文
摘要:构造初始化列表 构造对象成员的顺序跟初始化列表无关,跟定义顺序有关 笔记
阅读全文
摘要:构造析构 继承与构造析构: 在子类对象构造时,需要调用父类构造函数对其继承得来的成员进行初始化 在子类对象析构时,需要调用父类析构函数对其继承得来的成员进行清理 构造调用顺序:先基类构造,在派生类构造! 笔记
阅读全文
摘要:多继承 多继承:派生类继承多个基类(继承多父类特性) 语法:class <派生类名>: <继承方式1><基类名1> , <继承方式2><基类名2> , ...{ <派生类类体>; } 笔记
阅读全文
摘要:私有继承 私有继承:当私有继承时,基类的公有和保护成员变成派生类的私有成员,私有成员不可直接访问 笔记
阅读全文
摘要:保护继承 protected:保护继承 保护继承:当保护继承时,基类的公有和保护成员变成派生类的保护成员,私有成员不可直接访问! 笔记
阅读全文
摘要:公有继承 公有继承 public: 当类的继承方式为公有继承时,基类的公有和保护成员的访问属性在派生类中 不变,而基类的私有成员不可访问。 即基类的公有成员和保护成员被继承到派生类中仍作为派生类的公有成员和保护成员。派生类的其他成员可以直接访问它们。无 论派生类的成员还是派生类的对象都无法访
阅读全文
摘要:元友三友 元友函数: 全局函数作为友元函数: 成员函数作为友元函数: 元友类:
阅读全文
摘要:函数指针与函数重载 成员函数与普通函数区别: 定义一个对象时,系统只为数据成员分配空间。那么对于类的成员函数而言,它如何知道函数中提到的数据成员是哪个对象的数据成员呢?……实际上,C++为每个成员函数设置了一个隐藏的指向本类型的指针形参this,它指向当前调用成员函数的对象。成员函数中对对象成员的访
阅读全文