::的类名前有个 & ,什么意思?

转载自  http://www.imooc.com/qadetail/93985

MazePerson &MazePerson::setPersonPosition(int coordinateX,int coordinateY)
{
 positionX = coordinateX;
 positionY = coordinateY;
 return *this;
}

 

说明返回值是一个 MazePerson& 即 MazePerson类型的引用

返回引用就是返回的对象本身,不返回引用返回的是对象的一个拷贝。
返回引用你可以用一个引用去接收,对引用对象的操作也就是对原始对象的操作(本质上是同一个对象)。
不返回引用不可以用引用去接收,这时就是两个不同的对象只是值相同而已。

posted @ 2017-09-24 10:56  Mr左  阅读(1559)  评论(0编辑  收藏  举报