看到(C++ Primer)类的成员函数这里,突然对成员函数形参列表后面的const感到迷惑。
因为书中开始说是修饰隐含形参this的,然后又说是声明该函数是只读的。
大为不解!
翻资料、找人讨论。。。
最终恍然大悟:
还是书里说的对,那个const 修饰的是隐参this(const ClassName *const this),而this指向调用该函数的对象,所以不能通过this修改对象的内容。
既然不能修改对象的内容,那就不能调用其它非const this 的函数--因为可能会修改内容。
---必须要说明的是,this本身是const的,即 ClassName *const this。形参后面的const是限制了不能修改this指向的对象。
对我来说,这再次证明了C++的低级,太绕了!
虽然每天都有满足感。。。