this 指针 [C++ Primer]

this:成员函数都有一个附加的隐含形参,即指向该类对象的一个指针,它和调用成员函数的对象绑定在一起。

如果对类成员的引用没有限定,编译器会把这种引用处理成通过this指针的引用。

1.当我们需要将一个对象作为整体引用而不是引用对象的一个成员时。

   返回一个引用,该引用指向执行操作的那个对象;

1 Screen& Screen::setchar c)
2  {
3         content[cursor] = c;
4         return *this;
5  }

2.普通的非const成员函数中,this的类型是一个指向类类型的const指针;可以改变this所指向的值,不可以改变this保存的地址。

3.const成员函数中,this的类型是一个指向const类类型的const指针;既不可以改变this所指向的对象,也不可以改变this保存的地址。

4.不能从const成员函数返回指向类对象的普通的引用,只能返回*this作为一个const引用。

posted @ 2013-04-02 16:45  星语海蓝  Views(158)  Comments(0Edit  收藏  举报