在c++中const与指针的结合
时间: 2023-12-10 11:04:59 浏览: 35
在C++中,const与指针的结合可以用于声明指向const变量的指针,或者指向const对象的指针。使用const限定符可以确保指针不会修改指向的变量或对象的值,从而提高代码的安全性。
以下是一些常见的const指针用法:
1. 指向const变量的指针:
```cpp
const int* ptr; // ptr是一个指向const int的指针
int num = 10;
ptr = # // 合法,但是*ptr不能用于修改num的值
```
2. const指针:
```cpp
int* const ptr = # // ptr是一个指向int的const指针
*ptr = 20; // 合法,可以修改num的值
// ptr = &other_num; // 不合法,不能修改ptr的值
```
3. const指针指向const变量:
```cpp
const int* const ptr = # // ptr是一个指向const int的const指针
// *ptr = 20; // 不合法,不能修改num的值
// ptr = &other_num; // 不合法,不能修改ptr的值
```
在使用const指针时需要注意,不能将const指针赋值给非const指针,但可以将非const指针赋值给const指针。因为const指针指向的对象不能修改,如果将const指针赋值给非const指针,那么就可能导致修改const对象的值,从而破坏了代码的安全性。