c++中的引用和我的的一些學習思考

關於引用的第一個小問題

在c++ primer第五版中文版中,說了這麼一句:引用在初始化的時候必須綁定一個對象,且不可重現綁定,可是若是你輸入如下代碼c++

int i = 0, j =0;
 int &r = i;
 r = j;

你會發現,竟然沒有報錯! 難道是書上錯了嗎? 按照個人理解,書上並無錯,r = j,實際上不是從新綁定,而是把j的值賦給了r綁定的i上去。指針

引用的第二個小問題

仍是在c++ primer中文版第五版中,指出引用自己並非一個對象,因此不可使用指針指向它。code

而後我寫出了以下代碼對象

int i = 0;
 int &r = i;
 int *p = &r;

竟然又沒有報錯,究竟是我有問題仍是書有問題?class

可是有了上面一個問題的思考,這個問題也就不難理解,使用一個指針指向一個引用,實際上指向的是這個引用綁定的對象,按照這種思路理解,上面的代碼是沒有任何問題的。變量

肯定變量類型的小技巧

咱們經常會遇到很複雜的類型,例如技巧

const int *p;
int const *p;
int * const p;
const int * const int p;

遇到這種比較長的變量類型申明時,咱們能夠採起從右向左讀的辦法,例如引用

cont int *p就是一個指向const int類型的指針,而int * const p就是一個常量指針,指向一個int類型的數據im

相關文章
相關標籤/搜索