C++ Primer學習6:const指針 和 指針與const限定符區別

指針與const限定符 c++強制要求const對象的指針必須是const特性

例如const int *p;  p不是const,可以不初始化 這裏限定了p指針所指向的對象類型是const (p可以被修改,但是p指向的const對象不能被修改)

const指針 

例如 int a = 3; int *const p = &a; 指向某對象的const指針,指針不能被修改,必須初始化。

#include <iostream>

using namespace std;

int main()
{
    int a = 2;

    const int b = 3;
    const int c = 4;
//  const int *p = a;   //error 限定了p指針所指向的對象類型是const
    const int *p1 = &b;
    p1 = &c;   //true p不是const 可以被修改
//  *p1 = 6;   //error p指向的const對象不能被修改
    int *p2 = &a;
//  int *p3 = &b; //error c++強制要求const對象的指針必須是const特性
    return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章