摘要: # **1**.this指针工作原理 我们知道,C++的数据和操作也是分开存储,并且每一个非静态成员函数只会诞生一份函数实例,也就是说多个同类型的对象会共用一块代码 那么问题是:这一块代码是如何区分那个对象调用自己的呢? ![](https://img2022.cnblogs.com/blog/26 阅读全文
posted @ 2022-09-22 21:19 CodeMagicianT 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 程序1: #pragma warning(disable:4996) //2022年9月21日19:20:29 #include <iostream> using namespace std; //1.空类的大小是1,不是0 class Maker { }; void test01() { cout 阅读全文
posted @ 2022-09-22 19:16 CodeMagicianT 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 程序1: #pragma warning(disable:4996) //2022年9月21日19:20:29 #include <iostream> using namespace std; class Maker { public: Maker() { a = 20; } public: //1 阅读全文
posted @ 2022-09-21 21:09 CodeMagicianT 阅读(30) 评论(0) 推荐(0) 编辑
摘要: 程序1: //2022年9月20日22:06:27 #include <iostream> #pragma warning(disable:4996) using namespace std; //1.new创建基础类型的数组 void test01() { //申请基础数据类型的数组 int * 阅读全文
posted @ 2022-09-21 19:18 CodeMagicianT 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 1.申请和释放变量空间 1.为什么要有新的方法申请和释放堆区空间 因为用C语言的方式不会调用构造和析构函数 2.C++中申请堆区空间和释放堆区空间用什么关键字 申请堆区空间用new,释放空间用delete class Maker { public: Maker() { cout << "构造函数" 阅读全文
posted @ 2022-09-20 21:19 CodeMagicianT 阅读(57) 评论(0) 推荐(0) 编辑
摘要: c++提供了关键字explicit,禁止通过构造函数进行的隐式转换。声明为explicit的构造函数不能在隐式转换中使用。 [explicit注意] ● explicit用于修饰构造函数,防止隐式转化。 ● 是针对单参数的构造函数(或者除了第一个参数外其余参数都有默认值的多参构造)而言。 class 阅读全文
posted @ 2022-09-20 20:32 CodeMagicianT 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 1 explicit关键字: 只能写在构造函数前面,只是针对Maker maker=10;防止该形式的代码,叫编译器不要优化成Maker maker=Maker(10) 2 new和delete 2.1 new :从堆区申请空间,做初始化工作(调用类的构造函数),返回的是指针 2.2 delete: 阅读全文
posted @ 2022-09-20 20:04 CodeMagicianT 阅读(20) 评论(0) 推荐(0) 编辑
摘要: 01.explicit的作用(了解) class Maker { public: //explicit只能放在构造函数前面,构造函数只有一个参数或其他参数有默认值时 explicit Maker(int n)//防止编译器优化Maker m=10;这种格式 { } }; int main() { / 阅读全文
posted @ 2022-09-20 19:57 CodeMagicianT 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 程序1: //2022年9月15日08:39:35 #include <iostream> using namespace std; class Maker { public: int mId; int mAge; public: Maker(int id, int age) { mId = id; 阅读全文
posted @ 2022-09-15 21:28 CodeMagicianT 阅读(24) 评论(0) 推荐(0) 编辑
摘要: # 1.注意事项 1.如果类有成员对象,那么先调用成员对象的构造函数,再调用本身的构造函数,析构函数的调用顺序反之 2.成员对象的构造函数调用和定义顺序一样 3.注意,如果有成员对象,那么实例化对象时,必须保证成员对象的构造和析构能被调用 **程序1:** ```C++ #pragma warnin 阅读全文
posted @ 2022-09-14 13:10 CodeMagicianT 阅读(25) 评论(0) 推荐(0) 编辑