Const 修饰符的使用
一、 定义常量
const int ciMaxSize = 100;
使用const修饰的变量具有常量性质,其值不能修改。例外情况是用const_cast类型转换可以去掉const性质:
二、 函数常量参数
foo(const char *pName);
foo(const char& Name);
这个const的作用是告诉调用者:”请放心,我不会修改你的传给我的这个参数的值”。一般用于传指针和引用时才这样做,传值则不必要,因为传进函数内部的就是参数的一个副本,不会影响到实参的值。
三、 函数返回值
const char* foo();
const char& foo();
告诉函数返回值接收者:”你不能修改这个返回值”
四、 常量成员函数
class A
{
public:
void foo() const;
private:
int I;
}
表示这个成员函数不会修改类的成员变量