已采纳回答 / BlueAirR
前面说int对象成员 一个占4个内存单元,怎么sizeof(line) 占用16个内存单元?答: 因为Coordinate类中有两个int变量共8个内存单元,然而Line类中包含两个Coordinate类型的参数 即A点,B点,一个点就相当于占用8个内存单元,所以A+B = 16个内存单元。注意: !!!但是,Line类中定义的是对象指针(地址(32位系统--4个内存单元))而不是对象,所以实际的sizeof(line)是8个内存单元。
2016-12-13
已采纳回答 / 疯狂小惠
该指针定义的是 Coordinate * const pCoor = &coor1; 指针pCoor是常指针,只是它只能指向coor1,不能指向其他的对象,但是它的权限还是读写权限
2016-11-21
已采纳回答 / qq_闭上眼默_0
老师说的是j=3哦。前面从堆上申请了p数组;在对p数组进行实例化时候进行了两次p++,p走到了第三个元素的位置;如果只进行两次p--,那么p 刚好回到第一个元素的位置。但是在对p数组遍历时候,进行了三次p--。p已经跑出我们申请的内存范围了。所以需要再来一次p++,使得p回到内存中的第一个元素的位置上来,在进行delete[]p 释放。
2016-11-14
已采纳回答 / 慕九州2325515
不对,你在执行delete (Line对象指针)的时候就会执~Line,而类Line中的析构函数~Line中又有delete (Coordinate的对像指针)他就会先调用~Coordinate之后在打印输出“~Line”,他是cout写在了delete(Coordinate的对像指针)之后,如果是之前就会先打印,但是销毁对象的顺序还是先执行~line
2016-10-05