• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    新手入門:C++下的引用類型

    來源:懂視網 責編:小采 時間:2020-11-27 22:45:44
    文檔

    新手入門:C++下的引用類型

    新手入門:C++下的引用類型: 引用類型也稱別名,它是個很有趣的東西。在c++ 下你可以把它看作是另外的一種指針,通過引用類型我們同樣也可以間接的操作對象,引用類型主要是用在函數的形式參數上,通常我們使用它是把類對象傳遞給一個函數。 引用對象采用類型名加上&符號和名稱的方式進
    推薦度:
    導讀新手入門:C++下的引用類型: 引用類型也稱別名,它是個很有趣的東西。在c++ 下你可以把它看作是另外的一種指針,通過引用類型我們同樣也可以間接的操作對象,引用類型主要是用在函數的形式參數上,通常我們使用它是把類對象傳遞給一個函數。 引用對象采用類型名加上&符號和名稱的方式進


    引用類型也稱別名,它是個很有趣的東西。在c++ 下你可以把它看作是另外的一種指針,通過引用類型我們同樣也可以間接的操作對象,引用類型主要是用在函數的形式參數上,通常我們使用它是把類對象傳遞給一個函數。

      引用對象采用類型名加上&符號和名稱的方式進行定義。例如:(int &test;),這里我們就定義了一個int類型的名為test 的引用,但是int &test;這樣的方式是不能夠被編譯成功的,因為引用的定義必須同時給應用進行賦值操作,這里的賦值并不是說把變量的值傳遞給引用,而是把引用指向變量,寫成這樣就對了:(int &test=變量名;)。

    #include <iostream
    using namespace std; 

    void main(void

    int a=10; 
    int &test=a; 
    test=test+2; 

    cout << &a << "|" << &test << "|" << a << "|" <<test << endl; 

    cin.get(); 
    }

      觀察并編譯運行上面的代碼你會發現&a和&test的地址顯示是相同的,a和test的值顯示也是一樣的!

      結合前一個教程的內容我們來說一下const引用的相關內容,這里要特別注意,和前一個教程一樣帶const修飾的引用同樣也容易混淆概念!

      const修飾如果用在引用上會有一個特別之處,它的奧妙就在于可以進行不同類型的對象的初始化,而這一切在普通變量操作上是不可能的下面我們來看一個例子:

    #include <iostream
    using namespace std; 

    void main(void

    int a=10; 
    //double &test = a + 1.2f; //這句就是錯誤的! 
    const double &test = a + 1.2f; 

    cout << &a << "|" << &test << "|" << a << "|" <<test << endl; 

    cin.get(); 
    }

      上面的代碼足夠說明問題了,這就是const修飾帶來的好處,但是聰明的人會在輸出的時候發現一個問題,就是a和test的值的輸出不同,按照最先說的道理應該可以改變a的值呀,為什么在這里卻有沒有能夠改變呢?

      道理是這樣的,const修飾過后的引用在編譯器內部是這樣進行變化的。

    int a=10; 
    const double &test = a + 1.2f;

      這樣的一段代碼在編譯器認為卻是下面的方式進行的

    int a=10; 
    int temp = a; 
    const double &test = temp + 12.f

      這里其實是把a的值賦給了一個臨時temp 變量而后test獲得的卻是temp+12.f 改變的是temp而不是a,所以就出現了a和test顯示的值不同的情況,這里要特別注意,這是一個很容易混淆的地方,在編寫程序的時候要特別仔細,以免出現了問題卻檢查不出為什么

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    新手入門:C++下的引用類型

    新手入門:C++下的引用類型: 引用類型也稱別名,它是個很有趣的東西。在c++ 下你可以把它看作是另外的一種指針,通過引用類型我們同樣也可以間接的操作對象,引用類型主要是用在函數的形式參數上,通常我們使用它是把類對象傳遞給一個函數。 引用對象采用類型名加上&符號和名稱的方式進
    推薦度:
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 久久99精品久久只有精品| 成人午夜精品网站在线观看| 久久久精品国产sm调教网站 | 亚洲精品久久久www| 麻豆精品久久久一区二区| 久久综合国产乱子伦精品免费 | 91精品国产高清久久久久久国产嫩草| 亚洲国产精品一区第二页 | 永久无码精品三区在线4| 国产啪亚洲国产精品无码 | 日韩精品久久久肉伦网站| 欧美精品黑人粗大视频| 国产精品免费久久久久影院| 国产精品久久久久久| 国产精品视频一区二区三区无码| 中文字幕久精品免费视频| 久久噜噜久久久精品66| 国产精品狼人久久久久影院 | 国产精品福利一区二区| 国产精品日韩欧美一区二区三区| 午夜精品久久久久久99热| 综合在线视频精品专区| 亚洲精品无码成人片在线观看| 免费看一级毛片在线观看精品视频| 国产亚洲精品自在线观看| 成人国产精品一区二区视频| 亚洲国产综合精品中文第一区| 久久国产精品99久久久久久老狼| freesexvideos精品老师毛多| 国内精品久久久久影院日本| 久久精品国产亚洲av高清漫画| 日韩精品亚洲人成在线观看 | 亚洲av日韩精品久久久久久a| 亚洲av成人无码久久精品| 日韩欧精品无码视频无删节| 欧产日产国产精品精品| 欧美jizzhd精品欧美| 国产精品视频一区二区三区无码| 99热在线日韩精品免费| 久久精品男人影院| 成人精品一区二区三区电影黑人|