當前位置:
首頁 > 知識 > c++的引用篇+指針

c++的引用篇+指針

1、在C++中,變數的引用就是變數的別名。

2、int a;int &b=a;(b就是對a的引用)「&」是引用聲明符號,此處並不代表地址。

3、對變數的引用,並不另外開闢內存單元,b和a都是一個內存單元。

4、在聲明一個引用時,必須對其初始化(但是作為函數中的參數時除外)。

5、引用具有專一性,不能對一個引用變數初始化兩次。(錯誤:int a1,a2;int &b=a1;int &b=a2;)。

6、引用具有相連性,如果a的值變化了,則引用變數的值也發生了變化,因為他們具有同一個內存地址。

7、變數引用時,數據類型必須相同,使用const除外。

8、作用:

a)將變數名作為實參,以便於擴充函數的傳遞功能;

b) 傳送變數的指針;

c)傳送變數的別名;

變數引用和指針測試代碼如下:CPP_Point.cpp。

[html] view plain copy

  1. /*
  2. 測試變數的引用和指針的應用
  3. */
  4. #include

    <iostream>

  5. using namespace std;
  6. int main()
  7. {
  8. int a=3;
  9. int &b=a; //b不是地址,為a的引用(別名)[建立引用時必須初始化對象(形參除外),必須聲明數據類型];
  10. cout

    <<

    "b="

    <<b<<endl

    ; //輸出b的值為3;
  11. int *p=&b;
  12. cout

    <<

    "p="

    <<p<<endl

    ; //輸出的p為內存中的地址0x69fee4;
  13. cout

    <<

    "*p="

    <<

    *p

    <<endl

    ; //*p的值為3;
  14. int *pp=&a;
  15. cout

    <<

    "*pp="

    <<

    *pp

    <<endl

    ;
  16. cout

    <<

    "pp="

    <<pp<<endl

    ;
  17. cout

    <<

    "**********************************************"

    <<endl

    ;
  18. int i=5;
  19. int *ppp=&i;
  20. int * &pt=ppp; //表示一個 int *類型的對象對a的引用
  21. cout

    <<

    "pt="

    <<pt<<endl

    ;
  22. cout

    <<

    "&pt="

    <<

    &pt

    <<endl

    ;
  23. cout

    <<

    "*pt="

    <<

    *pt

    <<endl

    ;
  24. cout

    <<

    "* &pt="

    <<

    * &pt

    <<endl

    ;
  25. return 0;
  26. }

截圖如下:

c++的引用篇+指針

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 程序員小新人學習 的精彩文章:

Spark SQL與DataFrame詳解以及使用
關於PHPExcel中日期轉換遇到的一些問題

TAG:程序員小新人學習 |