太多的信息会让你抓不住重点,下面通过间短的举例说明了类的几种实例化方式,熟悉以后再阅读代码的时候就能减少疑惑。
1.直接实例化:使用类名直接实例化对象 MyClass obj;
2.使用 new 关键字动态分配内存:使用 new 关键字来在堆上动态分配内存,并返回指向新对象的指针MyClass* ptr = new MyClass();
3.初始化对象时传递参数:MyClass obj(42);
4.使用拷贝构造函数进行实例化:使用已有对象来创建一个新对象,通过调用拷贝构造函数
MyClass newObj(existingObj);
5.使用赋值运算符:将已有对象的值赋给新对象
MyClass newObj = existingObj;
6.使用隐式转换,间接创建对象,但此时编译器可能存在优化:
Myclass C = 10;
7.数组形式的对象实例化: 创建对象数组时,可以指定数组的大小并初始化每个元素
MyClass array[5]; // 创建一个包含5个MyClass对象的数组
8.使用初始化列表: 在对象实例化时,使用初始化列表对成员变量进行初始化
MyClass obj {42}; // 使用初始化列表初始化成员变量
其中的6条和8条我没有碰到过。