最新回答 / 凰苍
你的意思是不能返回对象引用吧,因为函数内部建立的是“临时对象”,而临时对象在函数结束后就会被系统回收;引用的特点是将“对象在此函数内值的改变”返回出去并“继续存在”,“临时对象”和“对象引用”有冲突。
2018-10-17
最赞回答 / NodiSe
哈哈,要友善一点嘛,直接学c++怎么了引用和指针参数传递其实就是abab的原则,地址 a, 对象 b,要么a对a传递,要么b对b传递,其中a对a传递为指针传递,传的是地址。b对b传递为对象传递,传的是对象本身。另外b对b传递还能用别名,给b取个名字b1,对b1操作从而改变b,因为本质上b1和b是同一个对象建议用指针或者引用,速度比较快<...code...>
2018-10-09
已采纳回答 / 慕哥3558660
你这个把两个后置++放在一条cout语句中输出,按照C++标准会产生一个未定义的行为。编译器在处理输出流的过程是按照自右向左的顺序对各输出项进行求值的。所以先进行((*coor)++).getY()的求值得到3,再进行((*coor)++).getX()的求值得到2,最后按顺序输出2,3。要想得到1,4最好将其分成两条cout语句来写。这就和int a = 1; cout << a++ << a++ << endl;得到的结果是2,1的道理是一样的。
2018-10-08
最新回答 / 空格键的自白
不使用引用也是可以的,但是形参输入函数会在堆栈新开一个区域给参数,对于一般类型的数据可能无所谓但是对于类来说就很庞大了。而且形参如果不是指针和引用是无法修改对象的参数的。
2018-09-27
最赞回答 / qq_谢谢惠顾_2
#include <iostream>using namespace std;class Time{public: friend void printTime(Time &t); Time(int hour, int min, int sec) { m_iHour = hour; m_iMinute = min; m_iSecond = sec; }private: int m_iHour; int m_iM...
2018-09-09