C++ const 函数的作用和用法
时间: 2023-09-23 21:13:08 浏览: 238
C++中的const函数是指在函数的参数列表后面加上const关键字,表示该函数不会修改所操作的对象。const函数可以用来保护对象的数据成员,确保在函数调用期间它们不会被修改,从而提高程序的健壮性和安全性。
const函数有两种用法:
1. 在函数定义的时候,在函数的参数列表后面加上const关键字,表示该函数不会修改它所操作的对象:
```cpp
class MyClass{
int data;
public:
void func() const;
};
void MyClass::func() const{
// 不能修改data成员变量
// 只能读取data成员变量
}
```
2. 在函数声明的时候,在函数的参数列表后面加上const关键字,表示该函数不会修改它所操作的对象:
```cpp
class MyClass{
int data;
public:
void func() const;
};
void MyClass::func() const;
```
在使用const函数时,需要注意以下几点:
1. const函数只能调用const函数和const成员函数,不能调用非const函数和非const成员函数。
2. const函数不能修改成员变量的值,也不能调用修改成员变量的函数。
3. const函数可以访问非const成员变量和非const成员函数。
4. 对于类中的常量成员变量,只能在初始化列表中初始化。
```cpp
class MyClass{
const int data;
public:
MyClass(int d): data(d) {} // 初始化列表中初始化常量成员变量
void func() const;
};
```
总之,const函数可以提高程序的健壮性和安全性,建议在设计类的时候尽可能使用const函数。
阅读全文