看板 C_and_CPP 關於我們 聯絡資訊
問題是這樣的,我參考 <stdarg.h> 發現可以實作不定參數的函式 我現在想寫一個一般化函式幫我處理記憶體配置 template<class T, int Nx>void HostMallocTest(int arg, n_pointer...) { //malloc all pointer Malloc( (void **) &kx, sizeof(T) * Nx); .... .... } 程式碼的示意圖大概是這樣, 我讀 stdarg.h 的感覺是沒辦法回傳資料,所以沒辦法處理指標 搜尋過版上、google沒有找到解,想請問各位有辦法實作這件事情嗎? 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.214.4
CaptainH:都用C++了, 用template解決就好啦 01/16 11:38
感謝提供方法,我會再找資料研究看看
LPH66:答案是當然可以, 不然 scanf 就不能做事了 01/16 13:34
有scanf的實作參考嗎?我爬不到資料....
samuelcdf:指標本身的大小是固定的啊, 是指標所指的東西大小不固定 01/16 14:32
samuelcdf:我自己剛學的時候常有這種錯覺, 想說你大概也是 01/16 14:33
我...看不懂你想要表達什麼...我要做的東西跟大小沒關係...吧?!! ※ 編輯: Lepton 來自: 140.115.214.4 (01/16 15:54)
Ag2S:為什麼不直接用new就好? 01/16 16:09
因為這是CUDA,他要配置記憶體要依照他的API格式去處理
firose:他說的是指標本身大小固定 所以你可以正確定位那個參數 01/16 16:12
samuelcdf:抱歉我想法跳太遠了, 反正就是指標也是內定型態, 所以沒 01/16 17:44
samuelcdf:問題 01/16 17:44
samuelcdf: http://ppt.cc/3FKu 01/16 18:00
Feis:你需要傳指標的參考或指標 01/16 18:18
感謝各位給出解答,讓我多學了東西 ※ 編輯: Lepton 來自: 140.115.214.4 (01/16 21:13)
EdisonX:C++11 keyword : std::initializer_list 01/16 22:00