看板 C_Sharp 關於我們 聯絡資訊
簡單說呢..就是教授最近拿出一個古老學長寫得的程式然後是C++寫的 要我把阿改成C# 怎麼改啊!!!! 第一個是 這個 typedef void (__stdcall *fp_ABFL1dllTYPE)(double &,double &,double *,long &,double &,double &,double &,double &,double &,double &,long &,char*,long ); fp_ABFL1dllTYPE ABFL1dll; 好像是在自定型別? 但是C#自訂型別好像是Class或是struct 但是都要先先給他一個命名? public struct newtype { public int x, y; public newtype(int p1, int p2) { x = p1; y = p2; } } C++好像沒有這個? 還有我看不懂 double &和 double * 是什麼 第二個是 HINSTANCE RefpropdllInstance; RefpropdllInstance = LoadLibrary(L"./refprop.dll"); ABFL1dll = (fp_ABFL1dllTYPE) GetProcAddress(RefpropdllInstance,"ABFL1dll"); 好像是在引用dll 但是好像C#沒辦法用他的dll... 另外問 是用dllImport嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.192.66.110 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1591851316.A.1A2.html ※ 編輯: ab710912 (123.192.66.110 臺灣), 06/11/2020 12:56:17
laikyo: https://reurl.cc/qd6n6E 06/11 13:02
james732: 第一個叫做function pointer. double *是pointer, 06/11 20:34
james732: double &是reference 06/11 20:34
james732: C#類似function pointer的是delegate 06/11 20:35
s4300026: 第一個是delegate, newtype可以用point, &對應是c# 的r 06/13 13:11
s4300026: ef, c#對class 的傳遞是用*, double* 可以用陣列[], c#d 06/13 13:11
s4300026: ll import 我不會,我都用c++/clr直接把c++的東西包一層 06/13 13:11
name2name2: 我有用這篇大大題到的資訊試了有成功 樓主還有問題 06/15 20:34
name2name2: 也可以再提出看看 06/15 20:34