引用類型也稱別名,它是個很有趣的東西。在c++ 下你可以把它看作是另外的一種指針,通過引用類型我們同樣也可以間接的操作對象,引用類型主要是用在函數(shù)的形式參數(shù)上,通常我們使用它是把類對象傳遞給一個函數(shù)。 引用對象采用類型名加上&符號和名稱的方式進行定義。例如:(int &test;),這里我們就定義了一個int類型的名為test 的引用,但是int &test;這樣的方式是不能夠被編譯成功的,因為引用的定義必須同時給應(yīng)用進行賦值操作,這里的賦值并不是說把變量的值傳遞給引用,而是把引用指向變量,寫成這樣就對了:(int &test=變量名;)。 #include <iostream> 觀察并編譯運行上面的代碼你會發(fā)現(xiàn)&a和&test的地址顯示是相同的,a和test的值顯示也是一樣的! 結(jié)合前一個教程的內(nèi)容我們來說一下const引用的相關(guān)內(nèi)容,這里要特別注意,和前一個教程一樣帶const修飾的引用同樣也容易混淆概念! #include <iostream> 上面的代碼足夠說明問題了,這就是const修飾帶來的好處,但是聰明的人會在輸出的時候發(fā)現(xiàn)一個問題,就是a和test的值的輸出不同,按照最先說的道理應(yīng)該可以改變a的值呀,為什么在這里卻有沒有能夠改變呢? int a=10; 這樣的一段代碼在編譯器認為卻是下面的方式進行的 int a=10; 這里其實是把a的值賦給了一個臨時temp 變量,而后test獲得的卻是temp+12.f 改變的是temp而不是a,所以就出現(xiàn)了a和test顯示的值不同的情況,這里要特別注意,這是一個很容易混淆的地方,在編寫程序的時候要特別仔細,以免出現(xiàn)了問題卻檢查不出為什么! |
正在閱讀:新手入門:C++下的引用類型新手入門:C++下的引用類型
2005-02-26 15:47
出處:PConline
作者:管寧
責任編輯:xietaoming
302 Found
Powered by Tengine