C++类的成员函数的形参列表后面的const

 

看到(C++ Primer)类的成员函数这里,突然对成员函数形参列表后面的const感到迷惑。

因为书中开始说是修饰隐含形参this的,然后又说是声明该函数是只读的。

大为不解!

翻资料、找人讨论。。。

 

最终恍然大悟:

还是书里说的对,那个const 修饰的是隐参thisconst ClassName *const this),而this指向调用该函数的对象,所以不能通过this修改对象的内容。

既然不能修改对象的内容,那就不能调用其它非const this 的函数--因为可能会修改内容。

---必须要说明的是,this本身是const的,即 ClassName *const this。形参后面的const是限制了不能修改this指向的对象。

 

对我来说,这再次证明了C++的低级,太绕了!

虽然每天都有满足感。。。

posted on 2016-06-16 10:23  LarryZeal  阅读(1192)  评论(0编辑  收藏  举报

导航