- 博客园支持Markdown评论了!主题已经抢先修复样式
- 主题已经升级至V2.0.9,点击查看
- 武汉加油 🇨🇳 中国加油!
- 全国疫情趋势AI预测
- 武汉光谷周边小区疫情地图
随笔分类 - C++基础
摘要:### 1 类与类之间的关系 - 继承(泛化) - 组合:整体对象可以控制成员对象的生命周期,一旦主体对象不存在,成员对象也不存在,整体对象和成员对象之间具有同生共死的关系,例如人的头部与眼、耳朵 - 聚合:成员对象是整体的一部分,但是成员对象可以脱离主体对象独立存在。主体对象析构到的时候成员对象依
阅读全文
摘要:### 1 智能指针 在C++中没有垃圾回收机制,必须自己释放分配的内存,否则就会造成内存泄露。解决这个问题最有效的方法是使用智能指针(smart pointer)。智能指针是存储指向动态分配(堆)对象指针的类,用于生存期的控制,能够确保在离开指针所在作用域时,自动地销毁动态分配的对象,防止内存泄露
阅读全文
摘要:### 1 可调用对象包装器、绑定器 #### 1可调用对象 C++中的可调用对象分为四类: - 函数指针: 任何一个函数都可以抽象成一个函数指针 ``` int print(int a, double b) { cout #include #include using namespace std;
阅读全文
摘要:### 1 原始字面量 有时候在输出一个路径字符串时,编译器会将其中的部分内容识别成转义字符进行输出,可以用`R “xxx(原始字符串)xxx”`其中()两边的字符串可以省略。原始字面量R可以直接表示字符串的实际含义,而不需要额外对字符串做转义或连接等操作。 ``` string str2 = R"
阅读全文
摘要:### 1 多态 多态分两类: - 静态多态:函数重载和运算符重载,即复用函数名 - 动态多态:派生类和虚函数来实现运行时多态 区别: - 静态多态在**编译阶段**确定函数地址 - 动态多态在**运行阶段**确定函数地址,根据传入的对象不同确定具体的执行函数 动态多态满足条件: - 首先要有继承关
阅读全文
摘要:### 1 友元 目的是让一个函数或者类可以访问另一个类的私有成员,其关键字为`friend` 三种实现: - 全局函数做友元 在类外定义一个全局函数,在类内的最上方将其声明为友元函数,声明的时候不需要放在public或private中,如: ``` friend void goodGay(Buil
阅读全文
摘要:### 1 new和delete - new的返回值是对应数据类型的地址,数组时返回首地址 - delete之后再让指针指向NULL是一个很好的习惯 ``` int *p = new int(10); delete p; int *arr = new int[10];//开一个10个元素的数组,访问
阅读全文