摘要: # 静态成员(static) ## 什么是静态成员: 被static修饰的成员/成员函数就叫静态成员,不管有多少对象,静态成员只有一份存于公共内存中。 设计静态数据成员目的是信息共享和信息交流 ## 普通成员特点: * 成员变量:每个类对象中都有一份属于自己的成员变量,相互独立、没有关联。普通成员与 阅读全文
posted @ 2023-08-24 22:50 冲他丫的 阅读(226) 评论(0) 推荐(0)
摘要: # 拷贝构造 拷贝构造就是一种特殊版本的构造函数, * 格式: ```c++ 类名(const 类名& that) { //执行给每个成员变量进行赋值 } ``` * 什么时候会调用拷贝构造: 当使用旧对象(已new的)给新对象(新new的)初始化时,会自动调用拷贝构造 ```c++ Test t1 阅读全文
posted @ 2023-08-24 20:18 冲他丫的 阅读(56) 评论(0) 推荐(0)
摘要: # this指针 1. this指针的类型:**类类型* const**。不能被修改和赋值。 2. **只能在成员函数的内部使用**。全局函数、静态函数都不能使用this. 3. this指针本质上其实是一个成员函数的形参(栈),是对象调用成员函数时,将对象地址作为实参传递给this形参。所以对象中 阅读全文
posted @ 2023-08-24 19:53 冲他丫的 阅读(83) 评论(0) 推荐(0)
摘要: # 对象的创建和销毁过程分析 ## 1、对象的创建过程 ①给对象划分内存空间(栈、堆) ②执行初始化列表 * 根据**继承表的顺序**调用父类的无参构造或有参构造 通过:父类(val)调用父类的有参构造 * 根据**成员变量的定义顺序**调用类类型成员的无参构造或有参构造 通过:类类型成员名(val 阅读全文
posted @ 2023-08-24 19:19 冲他丫的 阅读(170) 评论(0) 推荐(0)
摘要: # 面向对象和面向过程 面向过程: 关注如何解决问题,以及解决问题的步骤 ## 面向对象: 关注的解决问题的"人"即"对象",以及实现能解决问题的"对象" 注意:面向对象的细节的本质上还是面向过程,因此面向对象不是解决问题的捷径,而是以更高的维度去思考问题 ## 面向对象的四个特性: ### 抽象: 阅读全文
posted @ 2023-08-24 18:58 冲他丫的 阅读(34) 评论(0) 推荐(0)
摘要: # 构造函数 构造函数就是与类名同名的成员函数,当**实例化对象时它会自动执行**,当构造函数执行结束后,对象才完成实例化 任务:一般负责对类对象进行初始化、资源分配 ```c++ class 类名 { int* p; public: 类名(参数) { p = new int; } }; ``` 1 阅读全文
posted @ 2023-08-24 11:17 冲他丫的 阅读(77) 评论(0) 推荐(0)