首页 > 代码库 > const int* 和 int const*的区别?

const int* 和 int const*的区别?

Thinking in C++ 看到了第八章,讲的是指针。

这里提出这两个的区别是:

1、const int* 指向const的指针

对于这个的解释是:

    const int* u;       //u是一个指针, 它指向一个const int.这里不需要初始化,因为u可以是指向任意标识符(也就是说它不是一个const),但是它的值是不能被改变的。

2、int const*这个是指向int 的const指针

对于这个的解释是:

     int * const w = &d;

现在读成w是一个指针, 这个指针是一个指向int的const指针。因为指针本身就是const指针,编译器要求给它赋一个初值,这个值再生名周期中内不变,然而改变它的

值是可以的。


#include <iostream>
using namespace std;
const int* u;
int const* v;
int d = 1;
int* const w = &d;
const int* const x = &d;
int const* const x2 = &d;
int main()
{


}

const int* 和 int const*的区别?