C++枚举类型的坑

发布于 2021-09-18

C++一般声明枚举的语法如下: 发现了没有,名字是可选的!这种枚举被称作无作用域枚举,每一个枚举项都是一个直接声明的变量名! 如果 …


C++强制类型转换

发布于 2021-09-17

1. C风格的强制转换 C风格的强制转换(Type Cast)容易理解,不管什么类型的转换都可以使用使用下面的方式. C++支持C …


STL容器底层实现

发布于 2021-09-16

1、array 容器 std::array是在C++11中才引入的,就是对普通数组做了包装,添加了相关成员函数,使其符合容器的标准 …


std::move和std::forward

发布于 2021-09-15

基础知识 C++在C++11中引入了右值引用和移动语义的概念,在此基础上才有了std::move和std::forward这两个语 …


设计模式–DAO模型

发布于 2021-09-15

DAO是什么 DAO,全称 Data Access Object,数据访问对象。在业务层级中处于业务逻辑层和数据库交互层之间,是用 …


CPP对象内存布局 (下)

发布于 2021-09-14

书接上文,虚函数机制是cpp实现动态多态的一种方式。简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的 …


CPP对象内存布局 (上)

发布于 2021-09-14

基本规则 1、一般情况下,编译器会按顺序把成员变量放到内存里。 2、类的非虚成员函数不占用空间。某个类成员函数其实是所有实例共用的 …


并发中的锁机制

发布于 2021-09-13

Linux下的并发控制 互斥锁 这个算是最常见的锁,一个互斥量。只有获取到互斥锁之后才能继续运行,具有排他性。 从互斥锁中可以衍生 …