Comment Convertir IntPtr natif c++ objet
J'ai dll COM que j'utilise en C++/Cli, l'un de la méthode dans cette dll COM renvoie IntPtr
Je veux les convertir en arrière pour le natif de pointeur d'objet. Comment je peux faire ? s'il vous plaît mettre
- Vous devez fournir les déclarations pour la COM, de la méthode et de la "objet natif".
Vous devez vous connecter pour publier un commentaire.
IntPtr est une partie intégrante de type, vous devez d'abord le convertir en un type pointeur:
Ou la version plus lisible:
L'appel de la méthode sera optimisé à l'écart au moment de l'exécution.
IntPtr
a unToPointer
méthode qui retourne unvoid*
. Appeler cette méthode, puis utilisezreintepret_cast
de lancer ce pointeur à droite, type natif.static_cast
dans ce cas. Je ne connais pas de bonne raison dereintepret_cast
un vide-pointeur vers un autre type de pointeur.Je voudrais modifier Hans Passant de réponse,
IntPtr
directement retourne void pointeur .. lequel vous pouvez convertir facilement dans n'importe quel type de C++ natif Pointeur.ici
.ToPointer()
sera de retour void pointeur, maintenant vous pouvez lancer votre personnalisé de type pointeur.