-
对象数组查看全部
-
深拷贝要先申请一段内存然后将传入进来的内存的值拷贝进申请内存之中查看全部
-
析构函数只执行了一遍,第二遍没执行出来说明已经出现问题,程序死掉了。。。,因为arr1,arr2中的m_pArr指向统一段内存,释放时也释放了两次所以出现问题,前面正常执行出来的是system("pause")前面的语句,system执行完以后开始释放内存。深拷贝可以解决上面出现的问题查看全部
-
取地址查看全部
-
在拷贝时不是做简单的值的拷贝,而是将堆中内存的数据也进行拷贝,这种拷贝叫做深拷贝查看全部
-
只是将数据成员的值进行了简单的拷贝的这种拷贝叫做浅拷贝查看全部
-
arr2实例化时调用的是拷贝构造函数,拷贝构造函数中的参数arr就是arr1查看全部
-
#include <iostream> using namespace std; class Coordinate { public: Coordinate(int x, int y) { // 设置X,Y的坐标 m_iX = x; m_iY = y; } public: int m_iX; int m_iY; }; int main(void) { // 在堆上创建对象指针 Coordinate *p = new Coordinate(3, 5); // 打印坐标 cout << p->m_iX << "," << p->m_iY << endl; // 销毁对象指针 delete p; p = NULL; return 0; }查看全部
-
我们在创建线段的时候,往往希望线段的两个点已经确定所以线段类的构造函数要带有参数查看全部
-
将传入Line的X Y传给coor_A查看全部
-
在初始化列表中将x1,y1,x2,y2分配给A和B查看全部
-
在本例中实例化对象时,先实例化坐标A,再实例化B,然后创建Line,在销毁时顺序倒过来,类比于建造汽车,零件--整体查看全部
-
类line有两个数据成员(两个点),又是两个coordinate类查看全部
-
堆中实例化的数组需要手动销毁释放内存,栈中实例化数组系统会自动回收内存(如果定义析构函数打印出某些数据,控制台会打印出来,但是栈中实例化的打印很快,不容易看到)查看全部
-
用new实例化对象数组,在释放内存时如果不加中括号[],销毁的只是第一个元素查看全部
举报
0/150
提交
取消