04 2023 档案

摘要:函数重载: 利用命名矫正(name mangling)技术,在编译时把函数名加上参数的首字母来区分同名函数。 需要满足3个条件: 1.同一个作用域下 2.函数名相同 3.函数参数类型不同,参数个数不同,参数顺序不同 示例: 1 //函数重载需要函数都在同一个作用域下 2 void func() 3 阅读全文
posted @ 2023-04-28 19:05 潘阳399 阅读(77) 评论(0) 推荐(0) 编辑
摘要:实现原理: vector底层实现原理是一维数组。 vector通过一个连续的数组存放元素,如果这个数组的容量已满,再插入数据的时候,就要去申请一块更大的内存,然后把原来数组的数据复制到新数组中来,再释放原来数组的内存。 那么申请(扩容)多大的空间的比较合适呢? 如果我们扩容的空间太小了,比如原来的数 阅读全文
posted @ 2023-04-28 18:38 潘阳399 阅读(129) 评论(0) 推荐(0) 编辑
摘要:1,打开文件所在路径 2.复制文件路径 3.打开vs开发者命令工具 4.进入到源文件目录 5.查看命令:cd /d1 reportSingleClassLayout类名 "xxx.cpp 阅读全文
posted @ 2023-04-25 21:55 潘阳399 阅读(46) 评论(0) 推荐(0) 编辑
摘要:概念: 多态是指一个接口,根据传入的参数不同,呈现多种多态,多态分为静态多态和动态多态。 静态多态:像函数重载和运算符重载属于静态多态,复用函数名。它的函数地址在编译阶段就已经确定了。 动态多态:通过派生类和虚函数实现运行时多态(有子类继承,子类重写父类虚函数),它的函数地址在运行时确定。 多态需要 阅读全文
posted @ 2023-04-25 19:21 潘阳399 阅读(106) 评论(0) 推荐(0) 编辑
摘要:概念: 菱形继承:是指有两个派生类继承同一个基类,又有某个类同时继承这两个派生类,这种继承称为菱形继承或者叫砖石继承。 如:假设我们有基类A,然后有两个派生类B和C类,然后有个D类通过多继承机制继承了B类和C类。 那么这菱形继承会出现这样的问题: B继承了A的数据,C类也继承了A类的数据,当D继承B 阅读全文
posted @ 2023-04-24 23:53 潘阳399 阅读(530) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示