SoloCodigo

Programación General => C/C++ => Visual C++ => Mensaje iniciado por: xillinois en Miércoles 30 de Noviembre de 2005, 17:30

Título: Duda De Declaracion De Variables Globales
Publicado por: xillinois en Miércoles 30 de Noviembre de 2005, 17:30
Hola a todos, antes que nada no s si valla aqui esta pregunta, pero de antemano gracias por su ayuda.

Estoy haciendo una lista en Visual C++.NET y declaro la estructura de este tipo

public __gc struct nodo
{
int x;
String * y;
};

y declaro

typedef nodo *Lista;

mi duda es o mas bien mi pregunta, quiero declara una variable de tipo lista, que sea global asi .

Lista lista_principal


Pero no me deja y me manda este error: NO SE PUEDE DECLARAR UN OBJETO DE TIPO ADMINISTRADO GLOBAL O ESTATICO O UN PUNTERO __gc

Me podrian decir donde hago esta declaracion o como la hago.
Título: Re: Duda De Declaracion De Variables Globales
Publicado por: ivancp en Domingo 4 de Diciembre de 2005, 00:58
Cita de: "xillinois"
Hola a todos, antes que nada no s si valla aqui esta pregunta, pero de antemano gracias por su ayuda.

Estoy haciendo una lista en Visual C++.NET y declaro la estructura de este tipo

public __gc struct nodo
{
int x;
String * y;
};

y declaro

typedef nodo *Lista;

mi duda es o mas bien mi pregunta, quiero declara una variable de tipo lista, que sea global asi .

Lista lista_principal


Pero no me deja y me manda este error: NO SE PUEDE DECLARAR UN OBJETO DE TIPO ADMINISTRADO GLOBAL O ESTATICO O UN PUNTERO __gc

Me podrian decir donde hago esta declaracion o como la hago.
Creo que deberia ser asi:

struct nodo
{
   int x;
   String * y;
   nodo *sig; //apuntador al nodo siguiente
};
Título: Re: Duda De Declaracion De Variables Globales
Publicado por: xillinois en Lunes 5 de Diciembre de 2005, 17:02
Gracias por contestar,

public __gc struct nodo
{
int x;
String * y;
nodo * sig_nodo;          // Me falto agregar esta parte. Perdon
};

y declaro

typedef nodo *Lista;

Lo que pasa es que sino agrego el __gc en struct nodo, no me reconoce los String* (apuntador), y pues la duda es que no me deja declarar una variable global de tipo Lista.

Lista lista_principal;

La necesito global para poder modificarla en varios procesos, y me marca el error que antes mencione. Gracias por la respuesta nuevamente.
Título: Re: Duda De Declaracion De Variables Globales
Publicado por: ivancp en Martes 6 de Diciembre de 2005, 03:58
Entonces solo quitale la palabra "public"

__gc struct nodo
{
int x;
String * y;
nodo * sig_nodo;
};
Título: Re: Duda De Declaracion De Variables Globales
Publicado por: xillinois en Martes 6 de Diciembre de 2005, 17:33
Gracias por la respuesta anterior, pero el problema continua:

Hasta aqui todo bien

typedef _nodo * Lista;


pero cuando declaro una variable de tipo lista

Lista lis;

Me sigue marcando el mismo error:

error C3145: lis: no se puede declarar un objeto de tipo administrado global o estatico a un puntero __gc

De antemano gracias por la ayuda