推 QQ29:請問一下 T (&array)[N] 用reference 是因為compiler會 06/06 02:00
→ QQ29:對陣列的ref 的大小 做檢查嗎? 06/06 02:00
→ QQ29:藉此問一下 array的ref 有什麼用處嗎 除了檢查大小 06/06 02:01
→ QQ29:不然怎麼會想寫reference呢 06/06 02:01
推 zlw:C++ 一向都宣稱,reference變數是原本變數的別名(alias)。我想 06/06 05:08
→ zlw:是因為原本你去接收陣列,也只是pass by value複製該陣列指標 06/06 05:09
→ zlw:所以getLength裡面用參考,就可以讓他不是一個指標,而是別名 06/06 05:09
推 zlw:即int *array=a;與int (&b)[4]=a;的差別。[]運算子優先權較高 06/06 05:14
推 zlw:仔細想了一下,剛講的不合理。應該是假設有 int a[2]={1,2}; 06/06 05:22
→ zlw:這時候,我們不能做 int b[2]=a; 的述句,只能 int (&c)[2]=a; 06/06 05:23
→ zlw:所以為了參數要保持 T xxx[N] 的型態,就非得用 reference 06/06 05:24