const详解:
A.声明常量:
const int constantValue = 10;
const 用于声明一个常量,表示 constantValue 的数值不能被修改
B.指针和引用的const修饰:
const int* ptr; //const修饰指针,表示指向的数据是只读的
int const* ptr; //同上等价
const int& ref; //const修饰引用,表示所引用的数据是只读的
int const& ref; //同上等价
const修饰指针或者引用,表示指向的数据是只读的,不能通过该指针或引用来修改数据
C.const成员函数
class MyClass {
public:
void func() const {
// 在成员函数后加上 const 关键字,表示该成员函数不会修改对象的数据成员
}
};
在这个例子中,const 修饰成员函数,表示该成员函数不会修改对象的数据成员,因此在常量对象上也可以调用这个成员函数。
D.const函数参数
void func(const int param) {
// 表示参数 param 是只读的,函数内部不能修改它的值
}
在这个例子中,const 修饰函数参数,表示该参数是只读的,在函数内部不能修改它的值。
E.const对象
const MyClass obj;
const 修饰对象,表示对象的数据成员是只读的,不能被修改。
需要注意的是,const对象必须在定义时进行初始化,而且不能被修改。如果尝试修改const对象,编译器会报错。const对象只能调用const成员函数,不能调用非
const成员函数
总的来说,const关键字在C++中用于定义常量、修饰指针和引用、声明只读参数、成员函数等,能够帮助我们编写安全的代码,避免意外的数据修改和提高程序的可读性。