溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++引用方法如何使用

發(fā)布時間:2022-05-31 10:49:21 來源:億速云 閱讀:194 作者:iii 欄目:開發(fā)技術

這篇文章主要講解了“C++引用方法如何使用”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C++引用方法如何使用”吧!

    1.什么是引用

    引用可以看作是一個已經(jīng)定義的變量的別名,其作為變量別名而存在。

    2.引用的用法

    2.1 普通引用

    當引用作為普通引用時,其使用語法如下所示:

    Type& new_name = old_name;

    e.g.

    int a = 0;
    int& b = a;
    b = 5;				// 此時,a = 5

    注意

    在定義時必須使用相同類型的變量進行初始化

    不能使用常量進行初始化

    int& b = 0;

    2.2 const 引用

    在 C 語言中,const 使所修飾的變量具有只讀的屬性。同樣,在 C++ 中仍具有這個屬性。其使用語法如下所示:

    int a = 0;
    const int& b = a;
    b = 5				// error,變量 b 是只讀變量

    注意:

    在定義時必須使用相同類型的變量進行初始化

    當使用常量進行初始化時,C++ 編譯器會為常量值分配空間,并將引用名作為這段空間的別名

    e.g.

    const int& a = 0;

    2.3 作用在函數(shù)參數(shù)

    引用在一些場合可以代替指針來使用,具有如下優(yōu)點:

    1. 功能性:可以滿足多數(shù)需要使用指針的場合

    2. 安全性:可以避開由于指針操作不當而帶來的內(nèi)存錯誤

    3. 操作性:簡單易用

    e.g. 在函數(shù)參數(shù)方面使用引用

    void Demo(int& a, int& b)
    {
        int t = a;
        a = b;
        b = t;
    }

    e.g. 使用指針來實現(xiàn)上述函數(shù)的功能

    void Demo(int* a, int* b)
    {
        int t = *a;
        *a = *b;
        *b = t;
    }

    2.4 作用在函數(shù)返回值

    引用不僅可以作用在函數(shù)的參數(shù)方面,而且可以作用在函數(shù)的返回值方面,即返回指針

    e.g.

    int& Demo()
    {
        static int i = 0;
        printf("Demo: i = %d\n", i);
        return i;
    }
    int main()
    {
        int& j = Demo();
        printf("main: j = %d\n", j);
        j = 11;
        Demo();
        printf("main: j = %d\n", j);
        return 0;
    }

    3.引用的本質(zhì)

    引用在 C++ 中的內(nèi)部實現(xiàn)是一個指針常量,即 Type& name == Type* const name。因此,引用所占用的空間大小與指針相同。

    感謝各位的閱讀,以上就是“C++引用方法如何使用”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對C++引用方法如何使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

    向AI問一下細節(jié)

    免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

    c++
    AI