C++

C++11~20核心特性(3)auto占位符

C++11~20核心特性(3)auto占位符

1. 重新定义的auto关键字 C++98标准开始, auto用来声明自动变量,并且默认就是auto, 可以不写。 // 前面的auto可以不写auto int b,c=5; C++11标准赋予了auto新的含义: ...
C/C++ 2024年5月18日 153 0 0
C++11~20核心特性(1)新基础类型

C++11~20核心特性(1)新基础类型

1. 整数类型long long (c++11) 1.1 long long是一个至少为64位的整数类型 请注意这里的用词“至少”,也就说long long的实际长度可能大于64位。不过至今也没有遇到大于64位长度的long long。...
C/C++ 2024年5月3日 193 0 0
C++vector push_back和emplace_back的区别

C++vector push_back和emplace_back的区别

C++ STL库中,往vector末尾添加元素,一般使用push_back和emplace_back方法,那么他们有什么区别? 本文不会探讨STL源码的实现,而是从黑盒的角度,通过代码测试来分析区别。
C/C++ 2024年4月19日 335 0 0
C++ std::make_shared用途

C++ std::make_shared用途

Effective Modern C++中指出,在给智能指针std::shared_ptr初始化时,优先考虑使用std::make_shared,而非直接使用new。 总结有以下几点原因。
C/C++ 2024年4月14日 229 0 0
C++智能指针的基本实现

C++智能指针的基本实现

1. 代码实现 智能指针核心逻辑: 构造函数或者赋值时,增加或调整引用计数析构函数时,减小引用计数,如果引用计数为0,就释放内存。麻烦的地方是使用场景以及各种参数类型,要考虑全...
C/C++ 2024年4月7日 226 0 0
C++多态底层原理分析

C++多态底层原理分析

1. 什么是多态 通过一段示例代码来说明。 1.1 定义基类和子类 class Base {public:    virtual void PrintTestA()    {&nbs...
C/C++ 2024年3月8日 244 0 0