摘要: 1.单例模式(不考虑多线程) 构造函数私有化。 提供静态公有接口访问对象。 1.1懒汉式(在多线程下存在安全问题) 1.2饿汉式 //懒汉式 namespace lanHan { class MM { public: static MM* getMM() { if (lpMM == nullptr) 阅读全文
posted @ 2021-09-04 22:32 Creature_lurk 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 1.static成员 static成员特性: 它的调用可以不需要对象,它整个类共有的,(所有对象用的都是同一个),不是某一个对象单独属性。static 的成员虽然不需要对象就可以调用,但是依然是类的权限限定的 + static数据成员 + static 修饰的数据成员,就是静态数据成员 + 不能在类 阅读全文
posted @ 2021-09-04 14:04 Creature_lurk 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 1.const成员 + const数据成员 + 其他地方不能修改const 数据成员 + 初始化必须采用初始化参数列表的方式进行初始化 class MM { public: //const成员必须采用初始化参数列表 MM(string name,int age,int id):name(name), 阅读全文
posted @ 2021-09-04 13:52 Creature_lurk 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 1.拷贝构造 + 它是一个特殊的构造函数+ 参数是唯一的:对对象的引用+ 作用: 实现通过对象去构造对象 namespace myData { class Girl { public: //Girl() { cout << "默认构造" << endl; } Girl(string name) :n 阅读全文
posted @ 2021-09-04 04:12 Creature_lurk 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 1.构造函数 构造函数的特征 + 名字和类名相同+ 没有返回值+ 不写构造函数会存在一个默认的构造函数(无参),如果写了,默认的就不存在+ 构造函数不需要自己调用,创建对象的时候调用构造函数+ 构造函数的长相决定了对象模样(参数个数)+ 构造函数的作用: 一般来说就是为数据做初始化+ 可以被重载(参 阅读全文
posted @ 2021-09-04 03:16 Creature_lurk 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 1.类与对象小案例(封装按钮) #include <graphics.h> #include <iostream> #include <string> using namespace std; class Button { public: Button() = default; Button(int 阅读全文
posted @ 2021-09-04 02:15 Creature_lurk 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 1.类与对象基本概念 /* 类:对一系列事物的的共同属性或者行为的一种抽象 用class修饰的(结构体在C++中也可以当作类) 属性:事物的特征 -->数据成员 行为:具体的操作 -->成员函数 对象:类的具体化 */ //1.定义一个类 namespace myData { //用namespac 阅读全文
posted @ 2021-09-04 01:36 Creature_lurk 阅读(38) 评论(0) 推荐(0) 编辑