Создание std::set
в C # не очень практично.Однако можно передать коллекцию имен в C через PInvoke и поместить их в std::set
.
extern "C" {
void PassNames(const wchar** ppNames, int nameCount) {
std:set<std::string> nameSet;
for (int i = 0; i < nameCount; i++) {
nameSet.insert(ppNames[i]);
}
PassOfTheSet(nameSet);
}
}
Затем вы можете вызвать эту функцию из C # с помощью PInvoke и, следовательно, передать данные вродной
[DllImport("TheDllName.dll")
public static extern void PassNames(string[] names, int nameCount);