最新回答 / 不吃辣的李叔叔
我看了一下你的代码,和我的代码唯一的区别就是你把类 Line的析构函数设为了虚函数virual ~Line(),你可以去了解一下析构函数写成虚函数有关的知识。
2017-12-14
自制答案,相对老师的应该是随便一些
用得都是学过的知识点,
打印的时候是重复打印,秒过,可以在控制台看到每一步是怎么走的。
http://www.jianshu.com/p/6d22cabe4925
另外这个工程使用XCode编写的,用的时候把头尾去掉就好了
用得都是学过的知识点,
打印的时候是重复打印,秒过,可以在控制台看到每一步是怎么走的。
http://www.jianshu.com/p/6d22cabe4925
另外这个工程使用XCode编写的,用的时候把头尾去掉就好了
自制答案,相对老师的应该是随便一些
用得都是学过的知识点,
打印的时候是重复打印,秒过,可以在控制台看到每一步是怎么走的。
http://www.jianshu.com/p/6d22cabe4925
用得都是学过的知识点,
打印的时候是重复打印,秒过,可以在控制台看到每一步是怎么走的。
http://www.jianshu.com/p/6d22cabe4925
已采纳回答 / WORLD_CONNECTED
coordinate::coordinate(const coordinate &coor){m_ix=coor.m_ix;m_iy=coor.m_iy;m_pcoor =new int [m_ix*m_iy];cout<<"const coordinate &coor"<<endl;}上面的m_pcoor对应的int数组是空的。只开辟了内存for (int i =0 ;i<m_iy*m_ix;i++){ m_pcoor[i]=coor.m_pcoor[i];...
2017-12-11
已采纳回答 / WORLD_CONNECTED
Coordinate *p2; 这个指针没有实例化 是空指针拓展:Coordinate *p2 = new Coordinate();//在堆上实例化,用p2指针指向这个内存Coordinate p3();//在栈上实例化,得到p3对象Coordinate *p4 = &p3;//p4指针,指向这个p3对象的内存拓展2:使用对象用 .使用指针用 ->p2->m_iYp3.m_iYp4->m_iY
2017-12-11
arr1.printInfo().setLen(5);
和下面的等价的,
(arr.printInfo()) .setLen(5);
或者
Array arr = arr.printInfo();
arr.setLen(5);
和下面的等价的,
(arr.printInfo()) .setLen(5);
或者
Array arr = arr.printInfo();
arr.setLen(5);
2017-12-11
已采纳回答 / 慕神9155797
第一个问题可能是因为没有默认构造函数吧(只是猜测,建议试一试传入参数可不可以)coor3实例在堆中,coor4实例在栈中,coor5只是赋了指针的值,并不是拷贝构造
2017-12-11
已采纳回答 / 笔墨遥仙
数组当中每一个元素,不管是什么类型都是对象。你传递进去一个1,2,这算什么?最多只能算是一个int类型的数据并且也根本调用不了Cooordinate这个类的构造方法所以,你需要在数组元素当中 = { Coordinate(1,2)}这才是一个对象的元素
2017-12-10
已采纳回答 / 路卍飞
实例化Line对象时,先实例化Coordinate对象点A和点B,实例化点A和点B时,会自动调用构造函数,程序中如果只有构造函数Coordinate(int x,int y)时,调用时必须传递参数,否则会报错。但如果加上默认构造函数Coordinate()时,没有参数传递时就会调用Coordinate()这个函数,就不会报错了。
2017-12-09