我写了个 类CValue 专门用来传值
class CValue
{
public:
CValue();
virtual ~CValue();
public:
double GetValue1() const{return value1;}
void SetValue1(double v){value1 = v; }
private :
double value1;
cpp文件是CValue::CValue()
{
value1=10;
}
CValue::~CValue()
{}然后在一个子窗口中
if (NULL == pValue1) //pValue1是指向CValue的指针
{
pValue1 = new CValue;
pValue1->SetValue1(m_k1);
}
在另一个子窗口中
if (NULL == pValue2) ////pValue2是指向CValue的指针
{
pValue2 = new CValue;
m_ee11=pValue2->GetValue1();
}但是m_ee11得到的值不是m_k1的值 而是10(初始值),怎么样才能成功的传值呢?
我的问题出在哪里?
大家帮帮我!
class CValue
{
public:
CValue();
virtual ~CValue();
public:
double GetValue1() const{return value1;}
void SetValue1(double v){value1 = v; }
private :
double value1;
cpp文件是CValue::CValue()
{
value1=10;
}
CValue::~CValue()
{}然后在一个子窗口中
if (NULL == pValue1) //pValue1是指向CValue的指针
{
pValue1 = new CValue;
pValue1->SetValue1(m_k1);
}
在另一个子窗口中
if (NULL == pValue2) ////pValue2是指向CValue的指针
{
pValue2 = new CValue;
m_ee11=pValue2->GetValue1();
}但是m_ee11得到的值不是m_k1的值 而是10(初始值),怎么样才能成功的传值呢?
我的问题出在哪里?
大家帮帮我!
要传值,你要有一个“传”的过程啊。也就是说,首先你要在一个窗口中获取另外一个窗口的对象指针或者窗口句柄,然后通过对象成员函数或者消息的方式来“传”数据。
p->SetValue1(m_k1);
===================================
在另一个子窗口中
CValue *p1=(CValue *)GetParent(); //获得指向CValue类的指针
p1->GetValue1();
或者使用函数,获得其他文件案的指针来传递变量你在两个窗口中各自创建了一个CValue对象,他们有各自的值,你改变一个,另一个也不会改变
因为有this指针,他们各管各的,没什么直接联系
自己不知道怎么写
dynamic_cast