我正在围绕无法更改的本机 C++ dll 编写 CLI/C++ 包装器。本机 DLL 的一个函数返回一个非托管对象的向量。将此向量包装在我的 CLI 包装器中的最佳方法是什么?CLI 包装器将由 C# 应用程序使用。
class __declspec(dllexport) Instrument
{
public:
Instrument();
~Instrument();
string _type;
unsigned int _depth;
}
本机 DLL 具有函数 getInstruments() ,这是我要包装的
class __declspec(dllexport) InstrumentList
{
InstrumentList();
~InstrumentList();
vector<Instrument*> getInstruments();
}
所以我需要将仪器类包装在一个托管类中,并将 InstrumentList 类包装在一个托管类中。我包装了 Instrument 类,但需要将 getInstruments() 返回的向量转换为 InstrumentList 的 CLI 包装器可以返回的等效值。