我正在將大量的.h和.lib文件從本地C++包裝到託管C++,以便最終用作C#中引用的.dll。void * to Object ^在C++/CLI中
某些本地C++函數具有返回類型void *。當我將值傳遞給我的調用代碼時,我不知道如何處理這個問題。例如:如果一個C#應用程序調用我的DLL包裝,有什麼事我從本地調用返回:
void* start(ThreadFunc,void *, unsigned *);
我目前正在試圖框在通用系統返回:對象^沒有運氣。這是包裝中的電話:
m_NativeThread->start(cb,
GCHandle::ToIntPtr(GCHandle::Alloc(o)).ToPointer(),
static_cast<unsigned int*>(GCHandle::ToIntPtr(GCHandle::Alloc(u)).ToPointer())));
任何人都可以提供解決方案嗎?
我不知道他們會如何處理void *。如果我知道爲什麼它在第一個playlce中被聲明爲void *,那麼這會有所幫助...... void *的目的是什麼?爲什麼/何時使用它? – TomO 2009-07-20 18:23:30