用c o n s t限定函数参数及返回值是常量概念另一个容易被混淆的地方。如果以值传递对象时,对用户来讲,用c o n s t限定没有意义(它意味着传递的参数在函数里是不能被修改的)。如果以常量返回用户定义类型的一个对象的值,这意味着返回值不能被修改。如果传递并返回地址,c o n s t将保证该地址内容不会被改变。
如果声明一个成员函数为c o n s t函数,则等于告诉编译器可以为一个c o n s t对象调用这个函数。一个没有被特别声明为c o n s t的成员函数被看成是将要修改对象中数据成员的函数,而且编译器不允许为一个c o n s t对象调用这个函数。