[C++基础]018_常量指针和指向常量的指针
[C++基础]018_常量指针和指向常量的指针
先来看一下什么是常量指针,什么是指向常量的指针吧!
1. 常量指针定义
1 int * const ptr = new int();
2. 指向常量的指针
1 const int* ptr;
上面已经看到常量指针和指向常量的指针是如何定义的了,那么他们有什么特点呢?
1. 常量指针无法改变指针的值,即无法改变该指针指向的地址。因此,在定义常量指针的时候,必须要为其指定一个地址。即代码中的new int()。
2. 指向常量的指针所指向的值是无法更改的,即不能修改,不能销毁。如果对指向常量的指针进行delete操作的话,编译阶段就会报错。
上述二者的组合是什么呢?我们叫做指向常量的常量指针,这个指针本身无法重新指向,也无法修改该指针指向的对象。定义方式如下:
1 const int* const ptr = new int();