小人物學個大習(61-70)
C++ primer
對指針的引用
int I =42;
int *p ;
int *&r =p;
r = &i;
實際上是令p指向了I使用const限定符可以限制變量,讓其值不再改變
如果想在多個文件之間共享const 對象,必須在變量的定義之前添加extern關鍵字,并在使用的文件中進行相應聲明
C++程序員經常把,對const的引用,簡稱為常量引用
常量引用初始化時,允許使用任意表達式作為初始值,只要改表達式能夠轉換成引用類型即可。
int I =42;
const int &r1 =i;
但是這里就不能夠通過r1來更改i的值了。指向常量的指針,const double *ptr
要想 存放常量對象的地址,只能使用指向常量的指針,但是對于指向常量的指針而言,并沒有規(guī)定所指對象必須是一個常量,即只是不能夠通過該指針來更改所指對象的值const指針,指針本身就是常量,且常量指針必須初始化,初始化一旦完成,該地址就不能改變
int *const ptr = &errNumb;頂層const,表示變量本身是個常量,底層const,表示所指或者引用對象是個const,聲明引用的const都是底層const。
執(zhí)行拷貝操作時,
1.頂層const不受什么影響
2.拷入和拷出的對象必須具有相同的底層const資格,或者兩個對象的數據類型必須能夠轉換,一般來說,非常量可以轉換成常量,反之則不行常量表達式,是指不會改變并且在編譯過程就能得到計算結果的表達式。
怎么說呢,還是要鍛煉自己。
2023年7月04日
標簽: