Pregunta

Tengo un método manejado C ++ que toma como parámetro una lista de cadena ^

el método tiene que rellenar una estructura no administrado con punteros a la memoria en la cadena ^

extraer el WCHAR * es bastante simple con PtrToStringChars

Sin embargo, no sé el número de pin_ptr de asignar a la hora del diseño

Me gustaría añadir el PTR cubrió a una lista, con algo similar a la de abajo Lista >

hacer esto rendimientos C3225 de error: argumento de tipo genérico de 'T' no se puede 'cli :: pin_ptr', debe ser un tipo de valor o un identificador para una referencia

¿hay una manera de hacer esto? en C ++ administrado

¿Fue útil?

Solución

Bueno, usted tiene algunos problemas. En primer lugar pin_ptr no es un tipo administrado, por lo que no sería capaz de ponerlo en una lista. Se puede usar un vector ++ C en lugar excepto:

  

punteros Acobardamiento sólo pueden ser declarados como variables locales no estáticos en la pila.

http://msdn.microsoft. com / es-es / library / 1dz8byfh% 28VS.80% 29.aspx .

En su lugar es probable que tenga que usar GCHandles con un GCHandleType de Fijado directamente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top