![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++学习
文章平均质量分 81
xzzxwmsl
这个作者很懒,什么都没留下…
展开
-
定制new和delete
C++中对于new和delete的辨析原创 2022-06-15 21:43:13 · 198 阅读 · 0 评论 -
Effective C++ 《资源管理》 — RAII思想
RAII思想管理资源原创 2022-06-06 23:40:04 · 173 阅读 · 0 评论 -
Effective C++ 构造/赋值/析构
关于C++类的析辩原创 2022-06-04 21:57:18 · 131 阅读 · 0 评论 -
Effective C++ 基础部分
effective c++学习笔记原创 2022-05-19 21:12:13 · 278 阅读 · 0 评论 -
Cpp——面向对象高级
重载潜在二义性: 如果我们为一个类定义了转化为目标类型的类类型转化(operator type() const) 又定义了对应类型的算术类型重载时,会有二义性class Base {public: int v; Base(int i) : v(i) {} operator int() const { return v; } Base &operator+(const Base &b) { v += b.v;原创 2022-05-10 15:53:19 · 242 阅读 · 0 评论 -
C++拷贝控制操作
拷贝控制操作 由 拷贝构造函数、移动构造函数、拷贝赋值运算符、移动赋值运算符、析构函数组成。其中:拷贝构造函数和移动构造函数 定义了当用同一个类型的另一个对象初始化本对象时做什么。拷贝赋值运算符和移动赋值运算符 定义了将一个同类型对象赋值给另一个本对象时的操作。析构函数定义了当此对象销毁时做什么当不写时,编译器会默认生成。拷贝、赋值与销毁拷贝构造函数如果一个构造函数的第一个参数是自身类类型的引用,且任何额外参数都有默认值,则此构造函数是拷贝构造函数。并且因为拷贝构造函数常被隐式使用,所以其原创 2022-05-07 20:55:19 · 556 阅读 · 0 评论 -
动态内存笔记
智能指针为了更安全地使用动态内存(避免内存泄漏),引入了智能指针。shared_ptr一般来说,p->call是调用智能指针指向对象的成员,p.call是调用智能指针的api。make_sharedmake_shared用参数来构造给定类型的对象,其()内的参数列表必须与某个构造函数相匹配。struct Node { int v; Node *left, *right; string s; void show() { cout <原创 2022-04-26 22:17:51 · 242 阅读 · 0 评论 -
Cpp笔记——class 类
定义类时,class和struct关键字唯一的区别在于默认访问权限。构造函数默认构造函数只有当类没有声明任何构造函数的情况下,才会自动生成默认构造函数,否则需要手动构造。但是如果构造函数的参数都设置了默认值,那么相当于定义了默认构造函数class Base {public: int i; int j; // A不会报错,因为相当于有无参默认构造函数了 Base(int v = 11) : i(v) {} // A报错,因为声明了构造函数后,不会自动生成默认构造函原创 2022-04-20 22:31:53 · 848 阅读 · 0 评论 -
Cpp函数指针辨析
在Cpp中,函数名不可以作为形参或者返回参数,但是函数指针可以#include <iostream>using namespace std;void show(string s, int i) { while (i--) cout << s << endl;}// 返回函数指针// decltype返回的是函数类型,而函数只能返回函数指针decltype(show) *getShow() { return show;}auto ge原创 2022-04-19 21:43:11 · 168 阅读 · 0 评论 -
第10章——信号
Linux高性能服务器编程笔记原创 2022-03-28 22:03:06 · 304 阅读 · 0 评论 -
第4章——表达式
Cpp Primer原创 2022-03-10 15:54:04 · 386 阅读 · 0 评论 -
字符串、向量和数组
命名空间的using声明在头文件中一般不使用using,避免影响名称空间。string初始化string的方式string的操作string::size_typestring 比较大小字符串相加与Java不同,c++里面字符串字面值不是string对象,所以有以下规则处理string的字符遍历// 可以改变s的字符for (auto& c : s) { c = 'w';}// 改变不了s的字符for (auto c : s) { c = 'w';}原创 2022-01-16 23:00:02 · 236 阅读 · 0 评论 -
C++基础
C++ primer 第二章原创 2022-01-14 21:57:26 · 148 阅读 · 0 评论