![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
t782665933
这个作者很懒,什么都没留下…
展开
-
enable_shared_from_this
enable_shared_from_this 什么是enable_shared_from_this? 这是一个模板类,来自boost库,后被加进C++11标准。通过继承该类,可以让派生类有办法产生这个类的实例的智能指针shared_ptr。 使用方法 class T:public enable_shared_from_this<T>{ public: shared_ptr<T...原创 2019-05-15 19:46:24 · 260 阅读 · 0 评论 -
C++ 进程的内存管理和布局
堆,栈,全局/静态存储区,常量存储区 一个C++程序,大致可以划分为以上几个存储区 为什么不算上自由存储区? 只有存储区是站在C++层面上的存储区,通过new分配,delete释放 堆是站在操作系统和C层面上的存储区,通过malloc分配,free释放 事实上,他们分配的内存在大多数时候是同一块存储区,只是不同层面不同表示。 原因如下: new关键字的执行分为:分配内存,构造对象,两步。 在第一步...原创 2019-05-16 21:57:06 · 436 阅读 · 0 评论 -
关于C++多态
可分为编译时多态和运行时多态 编译时多态::模板类,模板函数 运行时多态::虚函数机制原创 2019-05-16 22:10:13 · 109 阅读 · 0 评论 -
include包含头文件的语句中,双引号和尖括号的区别
include包含头文件的语句中,双引号和尖括号的区别 #include <>格式:引用标准库头文件,编译器从标准库目录开始搜索 #incluce ""格式:引用非标准库的头文件,编译器从用户的工作目录开始搜索 预处理器发现 #include 指令后,就会寻找后跟的文件名并把这个文件的内容包含到当前文件中。被包含文件中的文本将替换源代码文件中的#include指令,就像你把被包含文件中...转载 2019-06-08 13:24:06 · 227 阅读 · 0 评论 -
封装,继承,多态
封装 封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。 封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。 继承 面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。 通过继承创建的新类称为“子类”或“派生...转载 2019-06-08 13:29:55 · 243 阅读 · 0 评论