C++
文章平均质量分 92
打工界的小苦瓜
这个作者很懒,什么都没留下…
展开
-
继承与多态小结
1.基类派生出派生类 派生类要继承基类(作用域也会被继承) 2.基类的布局优先于派生类的布局 3.对象的生成 1)首先开辟内存 2)然后调用构造函数 a.调用基类构造 b.调用派生类构造 4.对象的销毁 1)首先调用析构函数 a.调用派生类 b.调用基类 2)释放内存 5.系统调用基类的构造函数是默认的构造函数。 ...原创 2020-07-22 20:00:23 · 154 阅读 · 0 评论 -
智能指针
智能指针是面向对象的指针,以对象的形式存在,做指针的功能 智能指针类与实现普通指针行为区别在于:智能指针通常接受指向动态分配对象的指针并负责删除该对象。用户分配对象,但由智能指针删除它,由此智能指针需要实现复制控制成员来管理指向共享对象的指针。只要在撤销了指向共享对象的最后一个智能指针后,才能删除共享对象。使用计数是实现智能指针类最常用的方法。 栈 对象的生成 系统开辟 1.开辟内存 系统释放 2.调用构造函数 堆 对象的销毁 人为开辟 1.调用析构函数 人为释放原创 2020-07-18 11:54:52 · 157 阅读 · 0 评论 -
函数模板的简单知识
交换两个变量的方法有宏定义和函数,他们有各自的优缺点: (1)宏定义: 优:代码重复,适合所有类型 缺:缺少类型检查,宏在预处理阶段就被换,编译器不知道,用宏不安全。 (2)函数: 优:真正的函数调用,编译器会对类型检查,相较于宏安全。 缺:不同类型需要重复定义函数,代码无法复用。 针对以上,C++存在泛型编程,不用考虑具体数据类型。 函数模板的编译 1.定义点 模板的头部 2.调用点 模板的实例化后的模板函数 <>模板类型参数列表 T类型 万能的类型 虚假的类型 templat原创 2020-06-22 15:29:32 · 181 阅读 · 0 评论