• Jueves 25 de Abril de 2024, 13:14

Autor Tema:  Listas - Punteros  (Leído 1161 veces)

Dieguinho.

  • Miembro MUY activo
  • ***
  • Mensajes: 163
    • Ver Perfil
Listas - Punteros
« en: Viernes 3 de Agosto de 2007, 14:45 »
0
Buenas, queria hacerles unas preguntas referidas a las listas punteros y demas.

Necesito trabajar con unas listas en C# de la misma manera que lo hacia en C, con punteros.

Por lo que estuve viendo en algunas de las discusiones de aca para trabajar de esta manera tengo que trabajar con codigo inseguro usando unsafe.
Hasta aca todo bien, el problema viene cuando armo la estructura para armar la lista

Código: Text
  1.         struct strDatos
  2.         {
  3.             public string sNombreRepositor;
  4.             ... (mas datos) ...
  5.             strDatos* str;
  6.         }
  7.  

cuando quiero compilar eso me sale el siguiente error:
"Cannot take the address of, get the size of, or declare a pointer to managed type"

Alguien sabe que es o como hago para generar una lista de igual manera que en C o C++???

saludos.

Neopro

  • Miembro MUY activo
  • ***
  • Mensajes: 316
    • Ver Perfil
Re: Listas - Punteros
« Respuesta #1 en: Viernes 3 de Agosto de 2007, 15:39 »
0
Lamento decirte, que no puedes hacer eso, y la razón es simple, aunque nose si lo habrán corregido en la version 3.0 del Framework.

En C++ es muy facil crear estructuras anidadas con otras estructuras que tu mismo creaste.

En cambio C# no lo permite, y creo que estás haciendo esa llamada a una DLL hecha para C++, cosa que yo también intenté hace un tiempo, pero no lo logré, lo mejor que podrias hacer es intentarlo con clases, pero no estoy seguro de que funcione.

Suerte.
              [size=109]"Has lo que digo y no hagas lo que hago"[/size]

Dieguinho.

  • Miembro MUY activo
  • ***
  • Mensajes: 163
    • Ver Perfil
Re: Listas - Punteros
« Respuesta #2 en: Viernes 3 de Agosto de 2007, 15:54 »
0
uf, muchas gracias.
ahora para salir del paso estaba creando un array de esa estructura, pero bueno me parecia mil veces mas optimo usar listas. Una pena.

saludos!