Mi aplicación utiliza la reflexión para analizar el código C++/cli en tiempo de ejecución.
necesito para determinar si un tipo tiene un constructor sin parámetros no administrados (punteros y tal), porque quiero más adelante a utilizar:¿Cómo puedo determinar si un objeto ConstructorInfo tiene un parámetro no administrado?
ConstructorInfo constructorInfo;
// ...
var ret = constructorInfo.Invoke(BindingFlags..., null, myParameters, null);
si el constructor tiene un puntero a un objeto no administrado como un parámetro, hay una excepción de lanzamiento cuando le paso nulo.
Entonces, ¿cómo puedo determinar eso? no hay IsManaged ... e IsPointer no ayuda en este caso.
¿Por qué no funciona 'IsPointer'? – Gabe
Porque muchos otros objetos gestionados devolverán True para IsPointer (es decir, matrices) ... – seldary
Un puntero * * a una matriz devolverá True para 'IsPointer'. Además, una matriz C++ se representa como un puntero, por lo que un puntero a un objeto y una matriz de objetos son esencialmente idénticos. Ninguno de ellos se considera tipos de matrices reales en .NET. – Gabe