C++指針和引用

相同點

指針:指向一塊內存,他的值是指向內存的地址。
引用:某塊內存的別名。
   都是地址的概念

不同點

1.  指針是一個實體,而引用僅是個別名;
2.  引用使用時無需解引用(*),指針需要解引用;
3.  引用只能在定義時被初始化一次,之後不可變;指針可變;引用“從一而終”;
4.  引用沒有 const,指針有 const,const 的指針不可變;
5.  引用不能爲空,指針可以爲空;
6.  sizeof 引用,得到的是所指向的變量(對象)的大小;而sizeof 指針,得到的是指針本身(所指向的變量或對象的地址)的大小;
7.  typeid(T) == typeid(T&) 恆爲真,sizeof(T) == sizeof(T&) 恆爲真,但是當引用作爲成員時,其佔用空間與指針相同(沒找到標準的規定)。
8.  指針和引用的自增(++)運算意義不一樣;
以上總結轉自:http://blog.csdn.net/thisispan/article/details/7456169

用法

引用:主要功能是傳遞函數的參數和返回值

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