Comment puis-je passer HashTable
dans .net à C++ en utilisant interop?Passage de Hashtable au code non managé en utilisant interop
Je sais comment passer les types primitifs mais j'ai besoin de savoir comment je peux passer les autres.
Comment puis-je passer HashTable
dans .net à C++ en utilisant interop?Passage de Hashtable au code non managé en utilisant interop
Je sais comment passer les types primitifs mais j'ai besoin de savoir comment je peux passer les autres.
Vous ne pouvez pas transmettre l'intégralité de l'objet à utiliser comme table de hachage en C++. P/invoke traduit le type .NET en un type que C++ peut comprendre. Par exemple, String
est converti en LPWSTR
(wchar_t *
). Cependant, il ne peut pas convertir quelque chose comme HashSet
de cette manière.
Vous ne pouvez pas.
Il n'y a pas C++ type de paramètre auquel vous pouvez passer un Hashtable (à l'exception d'un void*
, qui ne vous fera aucun bien)
, vous avez besoin au lieu de créer un struct
C++ pour contenir les informations contenues dans le hashtable
, port le struct
en C#, puis marshal le struct
.