-
对象成员指针:指向对象成员的指针查看全部
-
05:28时的内容值得再听查看全部
-
(*p).m_iY 即 p->m_iY查看全部
-
深拷贝:当类里有指针类型的成员时,不能通过直接拷贝(这样一来,内存显然被置换,显然不对),这样造成了浅拷贝与深拷贝在代码上的不同:在拷贝构造函数里,深拷贝要在堆里重新开辟一段内存,即: Array(const Array& arr) { m_iCount=arr.m_iCount; m_pArr=new int[m_iCount]; for(int i=0;i<m_iCount;i++) m_pArr[i]=arr.m_pArr[i]; }查看全部
-
执行第一次析构函数时没问题,第二次的时候出现错误查看全部
-
如果坐标类有一个默认构造函数(即不带参数的构造函数),那么可以在实例化线段对象的时候不使用初始化列表。 如果坐标类是有参数的构造函数时,那么在实例化线段对象的时候必须使用初始化列表(要把相应的值传给坐标类)查看全部
-
上一节笔记的更专业化的表述:堆中实例化的数组需要手动销毁释放内存,在栈中实例化的数组,系统自动回收内存查看全部
-
栈中内存被销毁是在整个main函数执行完后销毁; 而堆中由指针P所指向的内存是可手动控制何时销毁(利用delete )可通过此来显示析构函数的存在;查看全部
-
当在堆中开辟用指针P指向的内存时,当P经过赋值而不再是指向首元素而是最后一个元素时,让P=P+1,这个时候才能释放P所开辟的内存空间查看全部
-
类内定义先写public查看全部
-
类里的函数要声明public查看全部
-
对象指针的写法查看全部
-
一个line对象体积=2个Coordinate对象=2X2个int数据成员=2X8=16 但是这里=2个Coordinate对象成员指针=2X4=8,其数据成员不在line中而在堆中查看全部
-
类的对象传参: void Line::setB(int x,int y) { m_coorB.setX(x); m_coorB.setY(y); }查看全部
-
line构造函数的坐标起始点要初始化,依靠初始化列表查看全部
举报
0/150
提交
取消