摘要: 【转载】原文链接:https://blog.csdn.net/lihao21/article/details/50688337 关键词:虚函数,虚表,虚表指针,动态绑定,多态 一、概述 为了实现 C++ 的多态,C++ 使用了一种动态绑定的技术。这个技术的核心是虚函数表(下文简称虚表)。本文介绍虚函 阅读全文
posted @ 2020-12-22 21:04 zeroPatrick 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 【转载】原文链接:https://www.veaxen.com/c11%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88%E4%B8%ADmake_shared%E5%AD%98%E5%9C%A8%E7%9A%84%E5%BF%85%E8%A6%81%E6%80%A7.html 阅读全文
posted @ 2020-12-22 20:36 zeroPatrick 阅读(2712) 评论(0) 推荐(2) 编辑
摘要: 【转载】:https://www.jianshu.com/p/03eea8262c11 make_shared的使用: shared_ptr<string> p1 = make_shared<string>(10, '9'); shared_ptr<string> p2 = make_shared< 阅读全文
posted @ 2020-12-22 20:20 zeroPatrick 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 使用方法: unique_ptr<string> ps1(new string("hello")); shared_ptr<vector<int>> ps2(new vector<int>(3)); //(*ps2).size() = 3;weak_ptr <vector<int>> ps5(ps2 阅读全文
posted @ 2020-12-22 19:51 zeroPatrick 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 智能指针和普通指针的区别在于智能指针实际上是对普通指针加了一层封装机制,这样的一层封装机制的目的是为了使得智能指针可以方便的管理一个对象的生命期。 在C++中,我们知道,如果使用普通指针来创建一个指向某个对象的指针,那么在使用完这个对象之后我们需要自己删除它,例如: ObjectType* temp 阅读全文
posted @ 2020-12-22 19:44 zeroPatrick 阅读(82) 评论(0) 推荐(0) 编辑
摘要: const_cast: 用来移除变量的const或volatile限定符。注意:const_cast是不能用来执行任何类型的转换的,比如只能讲const char* p 转换成char* p,而不能转成int* p。 int main() { struct T { int i; }; const T 阅读全文
posted @ 2020-12-22 13:03 zeroPatrick 阅读(649) 评论(0) 推荐(0) 编辑