請問函式參數設定時的"指標"及"參照"參數
目前在下碰到的問題如下:
一個結構陣列,要把這個陣列的位址傳給函式去表示(函式內不改變數值,只負責表示)
用指標傳的方式是寫得出來
EX:
--------------------------------------
typedef struct NUMBER{
int num;
int count;
}NUM;
NUM list[128];
//函式呼叫
myFunction1(list); //寫法1
myFunction2(&list); //寫法2
//函式本體
void myFunction1(const NUM* const pList){...} //寫法1:直接傳第一個元素的位址
void myFunction2(const NUM (*pList)[128]){...} //寫法2:傳該陣列(含128個元素)
的位址
--------------------------------------
不過由於傳指標給函式 = 還是會複製指標變數 = 佔一點點空間
所以個人想試著用"參照"的方式,來把位址傳給函式
void myFunction3(const NUM* (&rList)){...}
但很遺憾的編譯無法成功....
由於個人之前有練習過"指向函式的指標",藉由該練習得知用參照一樣可以指向位址
(例: int (*pFunc)(int , int);
int (&rFunc)(int , int); )
加上翻精華區後得知C++中有『*&』的"參照指標的參照(別名)變數"
理論上應該可以傳入才對....
請問小弟是在什麼地方出鎚了呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 113.152.83.170
推
04/24 04:46, , 1F
04/24 04:46, 1F
→
04/24 04:47, , 2F
04/24 04:47, 2F
→
04/24 04:48, , 3F
04/24 04:48, 3F
→
04/24 04:48, , 4F
04/24 04:48, 4F
→
04/24 04:49, , 5F
04/24 04:49, 5F
→
04/24 04:52, , 6F
04/24 04:52, 6F
推
04/24 12:55, , 7F
04/24 12:55, 7F
→
04/24 12:55, , 8F
04/24 12:55, 8F
→
04/24 12:55, , 9F
04/24 12:55, 9F
→
04/24 18:59, , 10F
04/24 18:59, 10F
推
04/24 20:50, , 11F
04/24 20:50, 11F
Programming 近期熱門文章
PTT數位生活區 即時熱門文章