顯示廣告
隱藏 ✕
看板 Knuckles_note
作者 oooandooo (新使用者)
標題 Re: [C++][教學] Function的參數傳遞3 Call by Reference
時間 2011年10月13日 Thu. AM 10:31:32


※ 引述《Knuckles》之銘言:
請問一個小問題

int& r_a = a;
           ↖
	
     這邊不用加&,是因為編譯器內隱轉型,還是我理解錯誤了呢?
	

請版主不吝賜教,謝謝!

--
※ 作者: oooandooo 時間: 2011-10-13 10:31:32
※ 看板: KnucklesNote 文章推薦值: 2 目前人氣: 0 累積人氣: 780 
1樓 時間: 2011-10-13 19:28:34 (台灣)
  10-13 19:28 TW
加&的話是把a的位址傳給 r_a 但 r_a 不是pointer啊
reference的用法就是這樣,直接把變數名稱傳給 reference
2樓 時間: 2011-10-13 20:50:53 (台灣)
  10-13 20:50 TW
這樣寫會過?
3樓 時間: 2011-10-13 21:49:45 (台灣)
  10-13 21:49 TW
不會過嗎? 沒在寫C++沒compiler可以測試 ...
4樓 時間: 2011-10-13 23:48:52 (台灣)
  10-13 23:48 TW
我了解了~這樣編譯不會過~謝謝!
5樓 時間: 2011-10-13 23:52:11 (台灣)
  10-13 23:52 TW
咦是喔 確定是用C++嗎 這寫法在C不能用喔
其實我也沒試過這樣寫啦 因為這只會用在function傳遞上而已
6樓 時間: 2011-10-14 08:51:15 (台灣)
  10-14 08:51 TW
其實我也被自己搞混了,我想問的應該是int& r_a = (int&)a;這樣跑正確的,如果改成int& r_a = (int)a;反而就編譯失敗
7樓 時間: 2011-10-14 09:05:19 (台灣)
  10-14 09:05 TW
為什麼要加那個轉型啊? o_O
8樓 時間: 2011-10-14 14:13:04 (台灣)
  10-14 14:13 TW
因為a本來宣告int,r_a宣告int&,要把int的變數指定給int&的變數,覺得怪怪的
9樓 時間: 2011-10-14 20:41:53 (台灣)
  10-14 20:41 TW
reference的用法就是這樣啊....
10樓 時間: 2011-10-23 13:27:29 (台灣)
  10-23 13:27 TW
*
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇