c++中函式部分實作
bool WINAPI test(uchar * outData,char * outResult)
{
std::string strResult =“xxxxx"
outResult = (char *)CoTaskMemAlloc(strResult.size() + 1);
strResult.copy(outResult, strResult.size(), 0);
*(outResult + strResult.size()) = '\0';
}
c#里該怎么去呼叫這個函式才能獲取到outResult里的字串,我嘗試過用IntPtr和StringBuilder都不行。或者說c++函式是否需要修改
uj5u.com熱心網友回復:
ref intptr看看,不行在另外想辦法
還是以前帖子的話,怎么呼叫取決于C++ 的怎么寫,而不是光看個函式宣告,這里把指標和記憶體分配都改了
uj5u.com熱心網友回復:
https://blog.csdn.net/Koupoo/article/details/7844887這里是對應說明
uj5u.com熱心網友回復:
樓上正解!!!uj5u.com熱心網友回復:
c++函式宣告要加上標志extern "C" bool WINAPI test(uchar * outData,char * outResult)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/273482.html
標籤:C#
