C++ 基础<4>
笔记视频资源来自公众号:黑马程序员…
发博是为了记录学习…无盗窃他人课程之意
1. new (触发 构造函数) / delte (触发 析构函数):
2. 深拷贝 / 浅拷贝:
3.拷贝构造的应用场景:
1. 函数 return 一个对象:
2. 不接收_就被编译器销毁了:
3. Test t1 = func ( )…转正:
4. 赋值 t1 = func ( )…还是被回收:
4.强化练习_仓库管理(没看…之后补上…):
5.this 指针:
1.结构体中:
2.this 调用该函数 的 对象地址:
3.this 是常指针 Test *const this:
4. int getK ( ) const …函数后面加const修饰 this指针:
6.对象返回自身:
1.static静态属性 必须由 static函数调用:
因为static静态属性 不属于某个对象…而且static 函数 也不会传this指针进来…
2.全局函数 和 成员函数 this指针的用法:
2.1 原 Class 函数:
2.2 想要实现的…但是必须返回 t1本身:
2.3 return this*:
2.4 返回引用 &:
7.友元函数:
1.调用 getX( ) / getY( ):
2.friend 声明_直接调用私有属性p1.x / p1.y:
3.friend类里面的一个函数:
8.友元类 与 友元之间的关系性质:
1.声明 友元类:
2.友元 具有单向性:
9.操作符重载的基本语法:
1.操作符重载 写在全局:
2.操作符重载 写在局部:
10.操作符重载的规则:
规则(1):
规则(2)至少有一个自定义类:
规则(3):
规则(4)(5)(6):
规则(7)至少有一个自定义类型:
规则(8):
规则(9):
规则(10):
11.双目运算符重载:
1.全局“+=”:
2.局部“+=”:
12.单目运算符重载:
1.全局 前“++”:
2.局部 前“++”:
3.全局 后“++”(需要用占位符…):
3.1 后++ 无法累加…:
3.2 全局实现 后“++”:
3.3 局部实现 后“++”:
13.左移右移操作符重载:
1.cout是ostream的 一个对象:
2.<< 只能写在 全局 :
3.局部 << :
4. >> 也只能写在 全局 :