- 博客(3)
- 收藏
- 关注
原创 菱形继承
1. 菱形继承引入的问题造成公共父类在子对象中存在多个实例,调用出错2. 菱形继承如何解决采用虚继承3. 虚继承的逻辑被虚继承的类会变成虚基类,虚基类在子类对象中存放在vbtable原本该存储在父类的位置上替换成vbptr,vbptr指向vbtable中虚基类的位置注意:虚基类在子类构造中会被直接当做父类...
2021-11-16 20:20:01
57
原创 继承和多态
·1 什么是多态静多态编译时期产生的多态又被称为早绑定函数重载 (函数名相同参数列表不同作用在同一作用域)模版动多态运行时期的多态晚绑定继承中的多态不同数据类型提供统一的一个接口·2 动多态的产生条件系统调用虚函数的时候·3 动多态的过程1使用调用虚函数2 找到vfptr指针3找到vf table4.在表中找到对应函数·5 虚函数列表什么时候产生在哪里储存编译期产生 rodata·6 构造函数能不能写成虚函数不可以 ...
2021-11-11 21:11:17
35
原创 c++学习
//函数在编译期生成指令//函数穿参数只能穿常量//默认值参数只能从右向左依次赋值不能跳过//函数的默认值参数只能赋值1次//函数调用穿惨 call 开辟栈 返回值返回 栈回退 栈清除//inline只是建议建议将该函数定义为内联//全局变量静态变量数据其他都是指令数据就是符号指令中只有函数名会生成符号//stic生成的指令局部符号只有本文件可见local//inline生成的local符号尽在本地可见//宏函数预编译在调用点展开无法调适没有安全不生成符号单文件可见/
2021-10-21 19:48:55
55
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人