Me toy liando 8(

14/04/2004 - 18:17 por Micky | Informe spam
Hola, me estoy liando con las variables, intento explicar
el problema...
en un proyecto MFC y desde la clase del dialogo llamo a
una funcion de otra clase (clase A) donde modifico
variables de esa clase, entonces desde otra clase (clase
B) accedo a las variables de la clase A, que son
publicas, y las veo pero el problema es que los valores
que modifique anteriormente no estan...problema de q lo
borre no es, tiene q ser por alguna declaracion o manera
de acceder.

Gràcias.

Preguntas similare

Leer las respuestas

#1 Cholo Lennon
14/04/2004 - 18:26 | Informe spam
¿Podrías mostrar la interfaz (o declaración) de cada clase y la forma en que
modificas los valores?. De esta manera te podremos ayudar.


Saludos
Cholo Lennon
Salta, ARG
Respuesta Responder a este mensaje
#2 Micky
14/04/2004 - 18:42 | Informe spam
Las clases son
class CFitxer{
public:
void LlegirFitxer(FILE*);
vector<CString> arrayinst;
vector<CString> arrayop;
};

#include "fitxer.h"
class CInstruccions{
public:
bool LlegirInstruccio();
CFitxer Fitxer;
};

En la interfaz tengo un boton para cargar el fichero y
llamo a la función LlegirFitxer() y en esa funcion
modifico los valores de los arrays, después desde otro
boton llamo a LlegirInstruccio() y es allí donde tengo el
problema, yo hago Fitxer.arrayinst.capacity( ) y me dice
que no hay nada pero en la funcion de LlegirFitxer() le
he metido datos.

Gràcias.
Respuesta Responder a este mensaje
#3 Cholo Lennon
14/04/2004 - 19:27 | Informe spam
Me falta la clase diálogo para ver que es lo que está mal. ¿Me puedes decir
si lo que pienso es correcto?

Tienes un cuadro de diálogo con un objeto de tipo CInstruccions incrustado.
Ante la pulsación de los botones haces algo así:

////// TuDialogo.h
class CTuDialogo: public CDialog
{
// ...
CInstruccions m_instruccions;
//...
};


////// TuDialogo .cpp
void CTuDialogo::OnClick1()
{
m_instruccions.Fixter.LlegirFitxer(...)
}

void CTuDialogo::OnClick2()
{
m_instruccions.LlegirInstruccio();
}


Espero tu respuesta.

Saludos
Cholo Lennon
Salta, ARG
Respuesta Responder a este mensaje
#4 Micky
14/04/2004 - 22:36 | Informe spam
sí más o menos es eso yo hago:

///CPLCDlg.h
class CPLCDlg : public CDialog
{
// Construction
public:
///
CFitxer Fitxer;
CInstruccions Instruccio;
bool condicio;
///

};

///CPLCDlg.cpp
void CPLCDlg::OnClick1()
{
Fitxer.LlegirFitxer(fp_in);
}

void CPLCDlg::OnClick2()
{
Instruccio.LlegirInstruccio();
}
Respuesta Responder a este mensaje
#5 Micky
14/04/2004 - 23:09 | Informe spam
Si hago como dices va!!
Yo creia q debias poner una declaracion del objeto
(CInstruccions m_instruccions) en la clase dialogo para
cada clase a la q quieras acceder...pero entonces "como
va"? depende de donde declaro el objeto?
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida