-
vector常用函数查看全部
-
后置++重载不用引用,要传入参数查看全部
-
在定义一元运算符成员函数重载时 Coordinate &Coordinate::operator-();查看全部
-
++ 运算符的重载:包括前置重载和后置重载。 前置重载:与之前相同; 后置重载: class Coordinate: { Coordinate operator++(int) { Coordinate old(*this);//将this指针的值赋到old; m_iX++; m_iY++; return old; //使用时仍然是old,使用完就++; } };查看全部
-
传入指针、引用传递效率高执行速度快查看全部
-
友元函数传入当前类的对象、引用或指针查看全部
-
一元运算符重载:<br> 1.一元运算符:比如正号,或者负号,一个操作符只操作一个数字。<br> 2.一元运算符重载:包括成员函数重载和友元函数的重载。<br> 成员函数: <br> class coordinate :<br> {<br> public:<br> xxx& operator-() //关键字 operator;<br> {<br> m_iX = -m_iX;<br> m_iY = - m_iY;<br> return *this; //隐形传入了一个this指针;<br> }<br> private:<br> int m_iX;<br> int m_iY;<br> };<br> 使用的时候: -coor1;//相当于coordinate.operator-();<br> <br> 2.友元函数重载<br> <br> class Coordinate :<br> {<br> friend Coordinate& operator-(Coordinate &coor) //不隶属于任何一个类;<br> {<br> return coor;<br> }<br> };<br> <br> 使用的时候 : -coor;//相当于operator-(coor);查看全部
-
最后return出ostream类型的的对象output<br> 友元直接.访问查看全部
-
第一个参数必须是ostream,第二个参数用&效率高查看全部
-
此处为是么不用引用查看全部
-
(1)函数参数是引用,则改变的是传入对象的值<br> (2)函数参数是对象,则改变的是新对象的值,其中调用了拷贝构造函数 (3)索引运算符不可以友元函数重载查看全部
-
用Coor1中定义的零时对象来存储和,并最后用return返回 this->m_iX即Coor1.m_iX查看全部
-
加减号类的运算符可使用友元函数重载,也可以用成员函数重载。 输出运算符只能使用友元函数重载,因为,<<重载时的形参有两个参数,第一个必须是ostream对象,而成员函数重载时第一个形参是隐形的this指针,因此<<只能声明为友元函数重载。 索引运算符只能使用成员函数重载。因为友元函数重载的第一个形参可以是this指针也可以是其他的值,但是对于索引运算符来说,它的第一个形参必须是this指针。查看全部
-
先定义一个临时对象old,使用默认的拷贝构造函数查看全部
-
区别前置++的&引用,后置++返回的是Coordinate的对象,所以没有&查看全部
举报
0/150
提交
取消