C++ Constructor 1 概述2 Constructor函数原型:Constructor(); 3 Copy Constructor函数原型:Constructor(const Constructor &); 3.1 调用场景 对象作为函数的参数,以值传递的方式传给函数; 对象作为函数的返回值,以值的形式从函数返回; 使用一个对象给另一个对象初始化。 12345void example(ClassType c 2022-03-18 cpp #CPP
C++ Destructor 概述析构函数可以声明为虚函数。 作用:基类的指针指向派生类对象时,可以用基类的指针删除派生类对象,防止内存泄露。详见 virtual。 声明为虚函数的场景:某个类被作为基类使用时。 不建议声明为虚函数的场景:某个类不准备作为基类使用(不包含虚函数成员)时,如果声明析构函数为虚函数,在构造类对象时,会创建一个虚函数表,增加对象的内存占用,还有可能降低可移植性。 当析构函数声明为虚函数,用基类指针指向 2022-03-18 cpp #CPP
C++ Keywords const 避免无意中修改数据。 能够处理 const 和非 const 实参,否则只能接收非 const 数据。 使函数能够正确生成并使用临时变量。 const 是 constant 的缩写,“恒定不变”的意思。被 const 修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。所以很多 C++ 程序设计书籍建议:“Use const whenever you need”。s 如 2022-03-18 cpp #CPP
C++ operator 概述operator[]operator=复制赋值运算符:ThreadPool &operator=(const ThreadPool &);移动赋值运算符:ThreadPool &operator=(ThreadPool &&); operator==参考文献 2022-03-18 cpp #CPP
C++ namespace 命名空间1234567891011121314151617181920212223242526272829303132333435363738394041424344#include <iostream>#include <vector>#include <stdlib.h>#include <stdlib.h>#include <string 2022-03-18 cpp #CPP
C++ 指针与引用 1 指针123int x;int &a = x;int *const b = &x; 2 引用引用更接近 const 指针。 2.1 左值引用左值引用要求右边的值必须能够取地址,如果无法取地址,可以用常引用;使用常引用后,我们只能通过引用来读取数据,无法去修改数据,因为其被const修饰成常量引用了。 123int a = 0;int &b = a; // 左 2022-03-18 cpp #CPP
C++ Standard Template Library 1 容器std::array12#include <array>std::array<int, 10> arr = {0}; 大小固定的数组,支持快速随机访问,不能添加和删除元素。 std::vector1#include <vector> 动态数组(Dynamic Arrays),支持快速随机访问,在尾部之外的位置插入或删除元素可能 2022-03-18 cpp #CPP
Hexo 概述https://hexo.io 主题Fluidhttps://github.com/fluid-dev/hexo-theme-fluidhttps://hexo.fluid-dev.com/ Nexthttps://github.com/iissnan/hexo-theme-nexthttps://notes.iissnan.com/ 配置环境方法一:在宿主机中配置nodejs环境 12m 2022-01-02 blog #Docker #Hexo
Docker 配置环境123456789101112131415161718192021# 安装 Dockersudo apt install docker-cesudo apt install docker.io # debian# 不用 sudo 使用 docker (可选)sudo groupadd dockersudo usermod -aG docker $USER # 将当前用户添加至 docker 2022-01-01 tools #Docker
CMake 概述CMake 是一个跨平台的开源构建工具,使用 CMake 能够方便地管理依赖多个库的目录层次结构并生成 makefile 和使用 GNU make 来编译和连接程序。 入门CMakeLists.txt 内容如下: 123cmake_minimum_required(VERSION 3.18) # 设置 cmake 的最低版本project(learn-cmake) 2021-12-01 tools #Tool