前几天写的被csdn吞了。 我服了!。。。。。。。。
没事 减少期待吧。
知识点
new的工作逻辑
1首先使用malloc开辟需要类型大小的空间
2调用该类型的构造函数
delete的工作逻辑
1调用该类型的析构函数
2释放指针所指向空间
new与delete需要配合使用
new T[N]与delete[] p要配合使用
没懂
AC为什么错?p是一个指针 但是它的指向地址现在是随机的 所以不能随便解引用
D为什么错 x是构造函数的形参是临沭变量 构造函数结束后 x对应的那片内存就还给操作系统了 值可能会发生改变
知识点
拷贝构造是一种初始化 是用已经存在的对象初始化新的对象
知识点
当函数返回值是类类型对象时 编译器会对他进行优化 具体怎么个优化法呢 比如传回来一个类类型对象 要用它初始化另一个类对象 这时不会调用拷贝构造 而是直接赋给他
知识点
我们不写 编译器会默认生成的成员函数
构造函数
拷贝构造函数 浅拷贝
赋值运算符重载函数 浅拷贝
析构函数
补充:赋值运算符=的重载函数只能作为成员函数使用