| |||
Variables globales visual studio 2005 Hola, estoy intentando pasar una variable de una clase a otra. He leido que en visual studio 2005 no se puede utilizar extern para crear una variable global. Alguien sabe algún modo para poder leer una variable desde una clase diferente a la que se creo?. Un saludo y muchas gracias |
| |||
Respuesta: Variables globales visual studio 2005 Si la variable esta dentro de una clase para que sea global tenes que declarar la clase como statica. Sino tenes que crear una instancia de la clase como global. Para acceder a esta variable d;entro de la clase deberias simplemente usar. miclase.mivariable O si la tenes como privada crear un metodo que devuelva el valor. |
| |||
Respuesta: Variables globales visual studio 2005 perdona, pero no me he enterado muy bien. Tengo mi archivo.h y archivo.cpp y archivo2.h y archivo2.cpp. Quiero leer una variable creada en archivo en archivo 2 (archivo es un cuadro de diálogo y archivo 2 es otro cuadro de diálogo que se ejecuta sobre el primero). Algo más específico? Muchas gracias y un saludo. |
| |||
Respuesta: Variables globales visual studio 2005 Archivo2 es una clase o que es?? Puedes hcar que devuelva un puntero a los datos que necesitas...o directamente si es una clase declarar una variable en la clase y leerla....podriaws mostrar un poco de codigo para ver como son las declaraciones y orientarnos un poco. |
| |||
Respuesta: Variables globales visual studio 2005 Son cuadros de diálogo. Estoy programando en visual studio 2005 (MFC). La definición de la funcion Main (La que tiene la variable que quiero utilizar en otro cuadro de diálogo) es la siguiente: ////////////////////////////////////////////////////////// class CMain : public CDialog { DECLARE_DYNAMIC(CMain) public: CMain(CWnd* pParent = NULL); virtual ~CMain(); enum { IDD = IDD_Main }; protected: virtual void DoDataExchange(CDataExchange* pDX); ////////////////////////////////////////////////////////// Desde este cuadro de diálogo se ejecuta el otro, dialogo.cpp de la sigueinte forma: ////////////////////////////////////////////////////////// void CMain::OnBnClickedgraficos() { Cgraficos Main; Main.DoModal(); } ////////////////////////////////////////////////////////// Y una vez abierto este cuadro de diálogo, desde él utilizo un timer que tiene que ir recogiendo los valores que van cambiando en el cuadro de diálogo Main para mostrarlos en gráficas. La definición de la clase Cgraficos es la siguiente: ////////////////////////////////////////////////////////// class Cgraficos : public CDialog { DECLARE_DYNAMIC(Cgraficos) public: Cgraficos(CWnd* pParent = NULL); // Constructor est·ndar virtual ~Cgraficos(); // Datos del cuadro de di·logo enum { IDD = IDD_GRAFICOS }; protected: virtual void DoDataExchange(CDataExchange* pDX); ////////////////////////////////////////////////////////// He probado a definir Extern la variable en main.h , para poderla utilizar en el otro cuadro de diálogo pero no me funciona. No me acuerdo exactamente del error que me da pero no me deja compilar. Vaya rollo os he dado jejeje. Bueno a ver si me pudieseis echar una mano que tengo que entregar el proyecto fin de carrera en breve y me falta prácticamente solo esto. Muchas gracias. |
| ||||
Respuesta: Variables globales visual studio 2005 Yo lo hago así, puede que no sea la mejor forma pero funciona.
__________________ % El mejor guerrero no es el que triunfa siempre sino el que vuelve sin miedo a la batalla. % |
Etiquetas: |