我已經提供了一個包含幾個類的非託管C++ DLL。我應該爲非託管C++ DLL創建一個C++/CLI包裝器DLL嗎?
我需要能夠在C#中使用這些類中的一些。根據我迄今爲止的研究,聽起來好像我需要創建一個C++/CLI包裝器DLL來處理託管和非託管類型之間的轉換。我已經看到了一些例子,其中有些人基本上會爲每個類創建一個C++/CLI版本,並且它將包含一個非託管C++類型的實例。實施我在這裏嘗試做什麼的最佳方式是什麼?非託管DLL中可能提供了10-15個類。現在我只需要使用其中的一些,但未來可能需要使用更多。謝謝!
如果DllMain就是這樣,你可以把它扔掉,因爲它什麼都不做。除此之外,亞歷克斯是正確的。另一種選擇可能是swig(http://www.swig.org/),但是學習它如何工作和修正所有注意事項的時間可能比編寫10個包裝器的時間要長,並且生成的代碼將會是醜陋的,可能難以閱讀。 – stijn
[C++/CLI混合模式DLL創建]的可能的重複(http://stackoverflow.com/questions/2691325/c-cli-mixed-mode-dll-creation) –