随笔分类 -  对象的初始化和清理

摘要:静态成员就是在成员变量和成员函数之前加上关键字static,称为静态成员 静态成员分为: 1.静态成员变量 (1)所有的对象共享同一份数据(决定了什么时候用static关键字) (2)在编译阶段分配内存 (3)类内声明,类外初始化(必须要做) 2.静态成员函数 (1)所有的对象共享同一个函数,因为它 阅读全文
posted @ 2020-04-14 14:11 坦率 阅读(158) 评论(0) 推荐(0)
摘要:C++中类的成员可以是另一个类的对象,我们称该成员为 对象成员 创建的顺序和构造的顺序是重点! 1 class A {} 2 class B 3 { 4 A a; 5 }; B类中有A作为成员,A为 对象成员 那么当创建B对象时,A和B的构造顺序是谁先谁后?(我初步猜测是A!因为A最先创建对象) 那 阅读全文
posted @ 2020-04-14 11:10 坦率 阅读(309) 评论(0) 推荐(0)
摘要:作用:C++提供了初始化列表语法,用来初始化属性 语法:构造函数():属性1(值1),属性2(值2)...{} 重点:体会每种写法的相通之处和区别 1 #include <iostream> 2 using namespace std; 3 4 //初始化列表 5 class Person 6 { 阅读全文
posted @ 2020-04-14 10:23 坦率 阅读(138) 评论(0) 推荐(0)
摘要:浅拷贝:简单的赋值拷贝操作,编译器提供的拷贝构造函数 深拷贝:在堆区重新申请空间,进行拷贝操作,程序员提供 浅拷贝: 如果利用编译器提供的拷贝构造函数,会做浅拷贝操作。 1 #include <iostream> 2 using namespace std; 3 4 class Person 5 { 阅读全文
posted @ 2020-04-12 11:19 坦率 阅读(164) 评论(0) 推荐(0)
摘要:两种分类方式: 1.按参数分为:有参构造和无参构造(默认构造) 2.按类型分为:普通构造和拷贝构造 三种调用方式: 1.括号法 2.显示法 3.隐式转换法 匿名对象的特点:特点:当前行执行结束后,系统会立即回收掉匿名对象 1 #include <iostream> 2 using namespace 阅读全文
posted @ 2020-04-11 11:49 坦率 阅读(233) 评论(0) 推荐(0)
摘要:情景:对象的初始化和清理是两个非常重要的安全问题 1.构造函数完成初始化,析构函数完成请理 2.两者可以都不用写,编译器会帮我们实现一个空实现的构造和析构 3.无须手动调用 构造函数: 1 #include <iostream> 2 using namespace std; 3 4 class Pe 阅读全文
posted @ 2020-04-11 11:04 坦率 阅读(206) 评论(0) 推荐(0)