已采纳回答 / Allxiangzi3571672
把Coordinate*p=new Coordinate[1];改成Coordinate*p=new Coordinate[3];
2016-06-15
已采纳回答 / 我呵呵了
是的,因为你如果再次调用set方法改变m_iCount的值时,并没有再次执行new 进行内存的分配,如果你自己写程序的时候,在调用set后,如果再次进行内存的分配是可以改变m_pArr的大小的,当然这些都必须在拷贝构造函数中完成。
2016-06-10
已采纳回答 / Allxiangzi3571672
Coordinate coorArr[1];中括号中的常量表示定义了几个元素, 1表示定义了一个元素。Coordinate coorArr[0],表示定义了零个元素,系统会报错。
2016-05-23
已采纳回答 / 慕粉3348155
记得前面有节课将过,+连接string类型的字符串变量,而且有点值得注意,不能直接连接两个字符串,好像必须要至少有一个是string变量。这里,数据p->m_iX应该是int类型不能用+连接,大概是这样吧C++远征之封装篇(上)——初始string,这是课程的连接:http://www.imooc.com/video/7548
2016-05-20
已采纳回答 / Topwood
this是指针,解引用后的*this不是指针,是一个对象。原本返回类型写成Array的话,函数返回是值传递,返回的是一个新的对象,这个对象的内容和*this是一样的,但他们不是同一个对象(就是在内存里新开了一块地方,再把*this的内容拷贝到这里)。而返回类型改成Array&后函数返回是引用传递,返回的是对象本身,就是*this
2016-05-20
已采纳回答 / 朵小妖儿
因为指针p经过之前的++,已经指向第三个值,所以进入for循环时,首先j=2,所以先打印出第三个元素的值,所以当然要p--,然后打印第二个、第一个元素的值。p->m_iX,是打印当前的指针指向元素的值,而p[j].m_iX只有当p没有++时才能用,这么说明白了么
2016-04-22