C++的const成员函数解析

来源:互联网 发布:mysql数据库的优点 编辑:程序博客网 时间:2024/06/11 05:44

   每个成员函数都有一个额外的、隐含的形参this。 在调用成员函数时,形参this初始化为调用函数的对象的地址。现在可以理解C++的const成员函数的作用了:const改变了隐含的this形参的类型。在调用const函数时,隐含的this形参将是一个指向调用对象的const 类型*的指针,也就是说它是一个指向const对象的指针。

  这种方式使用const的函数成为常量成员函数。由于this是指向const对象的指针。const成员函数不能修改调用该函数的对象。因此const成员函数只能读取而不能修改调用他们的对象的数据成员。

   const对象、指向const对象的指针或者引用只能用于调用其const成员函数,如果尝试用它们调用非const成员函数那将是错误的。

0 0
原创粉丝点击