51CTO:C++语言高级课程三

51CTO:C++语言高级课程三

bingliaolong C++ 5年前 20 0

进程内存空间布局 当运行一个可执行文件时,操作系统就会把这个可执行文件加载到内存中,此时进程就会有一个虚拟的地址空间(内存空间)。 BSS存放未初始化或者初始化为0的全局变量。 Linux下,可以通过nm列出可执行文件中的全局变量的地址。 全局变量以及全局的函数在编译时就已经分配...

C++14_第二篇

C++14_第二篇

bingliaolong C++ 2年前 18 0

变量模板 C++14引入了变量模板,使得可以为变量定义模板 make_unique C++14引入了std::make_unique,提供了一种创建std::unique_ptr的简便方式 std::make_unique 是一个模板函数,用于创建 std::unique_ptr...

Effective C++_第一篇

Effective C++_第一篇

bingliaolong C++ 6年前 36 0

导读 explicit 将构造函数声明为explicit,禁止编译器执行非预期(不是我们想要的)的类型转换。 除非我们有一个很好的理由,允许构造函数被用来进行隐式类型转换,否则我们应该把它声明为explicit的。 拷贝构造函数&&拷贝赋值操作符 拷贝构造函数被用...

STL_heap

STL_heap

bingliaolong C++ 6年前 26 0

简述 heap并不属于STL容器组件,它是priority queue的助手。 priority queue允许用户以任何次序将任何元素推入容器中,但取出时一定是从优先权最高的元素开始取。 binary heap是一种完全二叉树,即,整颗二叉树,除了最底层的叶子节点之外,是填满的...

深度探索C++对象模型一

深度探索C++对象模型一

bingliaolong C++ 4年前 38 0

关于对象 概述 C语言中,数据和处理数据的操作是分开的。 C++中,可能采用独立的抽象数据类型。 加上封装后的布局成本 virtual function 用以支持一个有效率的“运行期绑定“。 virtual base class 用以实现”多次出现在继承体系中的基类有一个单一而被...

COM组件_4

COM组件_4

bingliaolong Windows 1年前 41 0

ATL线程模型和套间 概述 在 COM 开发中,线程模式(Threading Model) 和 套间(Apartment) 是确保组件在多线程环境下安全运行的核心机制 ATL(Active Template Library)通过模板类(如 CComObjectRootEx)和线程...

STL_slist

STL_slist

bingliaolong C++ 6年前 26 0

异同 STL list是个双向链表。SGI STL另提供了一个单向列表,叫slist。 slist的迭代器属于单向的Forward iterator,list迭代器是双向的Bidirectional Iterator。 slist功能少点,所耗用的内存小点。 共同点是插入,移除,...

深度探索C++对象模型:对象、构造、数据、函数、执行

深度探索C++对象模型:对象、构造、数据、函数、执行

bingliaolong C++ 2年前 24 0

关于对象 封装的布局成本 普通函数没有增加成本 成员函数虽然含在类的声明之内,却不出现在对象之中 虚机制会增加成本 虚函数机制用来支持一个有效率的运行期绑定 虚基类用来实现多次出现在机场体系中的基类,有一个单一而被共享的实例 类成员概述 类数据成员 静态 非静态 类成员函数 静态...

breakpad记述:Windows

breakpad记述:Windows

bingliaolong C++ Windows 2年前 91 0

概述 Breakpad 客户端库负责监控应用程序是否发生崩溃(异常)、在崩溃发生时通过生成转储来处理这些崩溃 并提供将转储上传到崩溃报告服务器的方法 客户端 概述 Breakpad 客户端主要负责在应用程序崩溃时捕获崩溃信息,并生成 minidump 文件 该 minidump ...

扫一扫二维码分享
繁