2022_03_16 2
多态 编译时多态 通过函数重载实现 运行时多态 多态性可以概括为“一个接口,多个方法”,程序运行时才决定调用哪个具象化函数。 多态通过虚函数实现,虚函数允许子类重新定义成员函数,而子类重写定义父类函数的做法叫做覆盖,override。 虚函数相关 概念 虚函数机制用以支持一个有效...
多态 编译时多态 通过函数重载实现 运行时多态 多态性可以概括为“一个接口,多个方法”,程序运行时才决定调用哪个具象化函数。 多态通过虚函数实现,虚函数允许子类重新定义成员函数,而子类重写定义父类函数的做法叫做覆盖,override。 虚函数相关 概念 虚函数机制用以支持一个有效...
a b
虚函数 虚函数 虚函数机制用以支持一个有效率的“执行期”绑定。 虚函数指针 C++对象模型: 每个class产生出一堆指向虚函数的指针,放在表格当中。这个表格被称为svirtual table。 没一个类对象被安插一个指针,指向相关的virtual table,这个指针通常被称为...
Windows Mutex 创建或打开Mutex 等待获取Mutex所有权 通过WaitForSingleObject阻塞当前线程,直到Mutex变为有信号(可获取)状态: 释放Mutex 关闭句柄 使用CloseHandle关闭Mutex句柄(系统在进程退出时自动关闭,但显式关...
a b
vector.size() && vector.capacity() 相关介绍 size() 返回容器里面当前存放的元素个数 capacity() 在不重新分配内存的情况下,vector或string能存放的元素的最大个数 shrink_to_fit() 将cap...
红黑树 哈希表 TCP TCP三次握手过程 客户端发送连接请求到服务端 客户端发送:SYN 服务端收到消息后知道自己是可以与客户端连接成功的。 但是客户端并不知道服务端有没有收到它的请求,所有服务端收到消息之后得应答,告诉客户端它收到请求了。ACK(SYN) 服务端同时也会发送一...
原子操作 概念 所谓原子操作是指不会被线程调度机制打断的操作,这种操作一旦开始,就一直运行到结束,中间不会有任何context switch 原子操作可以保证正在工作的动作不被打断,即一旦开始,持续到结束。对比互斥锁优势在于,原子操作是在C/C++的层面,是无锁操作,既能解决并发...
shared_ptr shared_ptr采用引用计数的方式管理所指向的对象。当有一个新的shared_ptr指向同一个对象时(复制shared_ptr等),引用计数加1。当shared_ptr离开作用域时,引用计数减1。当引用计数为0时,释放所管理的内存。 可以使用make_s...
语言类 volatile 易变性 所谓的易变性,在汇编层面反映出来,就是两条语句,下一条语句不会直接使用上一条语句对应的volatile变量的寄存器内容,而是重新从内存中读取。 “不可优化”特性 volatile告诉编译器,不要对我这个变量进行各种激进的优化,甚至将变量直接消除,...
搜索当前标签