在对话框类2中怎样才能得到这个变量的值呢?
我要把这个变量的值显示在对话框类2的文本框中。
如果不用全局变量的话
谢谢。
8 个解决方案
#1
直接使用class1.m_str;就可以了。
#2
可是里面什么都没有呀
我在2中的OnInitDialog中调用的
如下:
CSelUser seluser;(CSelUser即为类1)
CString s_card_speed;
s_card_speed=seluser.test_card_speed ;
m_card_speed2.SetWindowText ( s_card_speed);
文本框中还是什么都没有呀
我在2中的OnInitDialog中调用的
如下:
CSelUser seluser;(CSelUser即为类1)
CString s_card_speed;
s_card_speed=seluser.test_card_speed ;
m_card_speed2.SetWindowText ( s_card_speed);
文本框中还是什么都没有呀
#3
seluser.test_card_speed 是空的吧。
如果CString没有赋过值,就是空的。除非你在CSelUser的构造函数中对他进行了赋值。
class CSelUser
{
public:
CSelUser() { test_card_speed = "xxxx"; };
...
}
如果CString没有赋过值,就是空的。除非你在CSelUser的构造函数中对他进行了赋值。
class CSelUser
{
public:
CSelUser() { test_card_speed = "xxxx"; };
...
}
#4
这两各类之间肯定有某种关系吧?
想办法获得另一个你想引用的类的对象的指针就可以了
例如:pclass->m_data=?....
想办法获得另一个你想引用的类的对象的指针就可以了
例如:pclass->m_data=?....
#5
对,是空的
但是在CSelUser.cpp中,它不是空的了,得到了应该有的值
我不能自己给它赋值,是个变量,需要根据别的得到它的值
谢谢
但是在CSelUser.cpp中,它不是空的了,得到了应该有的值
我不能自己给它赋值,是个变量,需要根据别的得到它的值
谢谢
#6
可是要用的类的变量的值到别的类里就没了,就变成空的了
为什么呢?
请帮忙呀,谢谢
为什么呢?
请帮忙呀,谢谢
#7
luckyker(坷坷):
你所说的已经有值的对象并不是你在OnInitDialog()中使用的对象。
在OnInitDialog()中,你是重新构建了一个CSelUser的对象,这个对象跟你想要的对象显然不是一个,所以里面的变量是空的
如果你非要用那个对象中的变量的话,那只好在构造对话框的时候把对象的指针传给dlg对象喽
另:如果你的test_card_speed变量并不于具体的对象有关系的话,可以把它作为类CSelUser的一个静态成员变量,这样的话就可以CSelUser::test_cart_speed引用了。这时的变量属于类而不是对象了,所有的对象都公用这样一个变量。
建议看一下C++的类与对象部分就什么都明白了
你所说的已经有值的对象并不是你在OnInitDialog()中使用的对象。
在OnInitDialog()中,你是重新构建了一个CSelUser的对象,这个对象跟你想要的对象显然不是一个,所以里面的变量是空的
如果你非要用那个对象中的变量的话,那只好在构造对话框的时候把对象的指针传给dlg对象喽
另:如果你的test_card_speed变量并不于具体的对象有关系的话,可以把它作为类CSelUser的一个静态成员变量,这样的话就可以CSelUser::test_cart_speed引用了。这时的变量属于类而不是对象了,所有的对象都公用这样一个变量。
建议看一下C++的类与对象部分就什么都明白了
#8
gz
#1
直接使用class1.m_str;就可以了。
#2
可是里面什么都没有呀
我在2中的OnInitDialog中调用的
如下:
CSelUser seluser;(CSelUser即为类1)
CString s_card_speed;
s_card_speed=seluser.test_card_speed ;
m_card_speed2.SetWindowText ( s_card_speed);
文本框中还是什么都没有呀
我在2中的OnInitDialog中调用的
如下:
CSelUser seluser;(CSelUser即为类1)
CString s_card_speed;
s_card_speed=seluser.test_card_speed ;
m_card_speed2.SetWindowText ( s_card_speed);
文本框中还是什么都没有呀
#3
seluser.test_card_speed 是空的吧。
如果CString没有赋过值,就是空的。除非你在CSelUser的构造函数中对他进行了赋值。
class CSelUser
{
public:
CSelUser() { test_card_speed = "xxxx"; };
...
}
如果CString没有赋过值,就是空的。除非你在CSelUser的构造函数中对他进行了赋值。
class CSelUser
{
public:
CSelUser() { test_card_speed = "xxxx"; };
...
}
#4
这两各类之间肯定有某种关系吧?
想办法获得另一个你想引用的类的对象的指针就可以了
例如:pclass->m_data=?....
想办法获得另一个你想引用的类的对象的指针就可以了
例如:pclass->m_data=?....
#5
对,是空的
但是在CSelUser.cpp中,它不是空的了,得到了应该有的值
我不能自己给它赋值,是个变量,需要根据别的得到它的值
谢谢
但是在CSelUser.cpp中,它不是空的了,得到了应该有的值
我不能自己给它赋值,是个变量,需要根据别的得到它的值
谢谢
#6
可是要用的类的变量的值到别的类里就没了,就变成空的了
为什么呢?
请帮忙呀,谢谢
为什么呢?
请帮忙呀,谢谢
#7
luckyker(坷坷):
你所说的已经有值的对象并不是你在OnInitDialog()中使用的对象。
在OnInitDialog()中,你是重新构建了一个CSelUser的对象,这个对象跟你想要的对象显然不是一个,所以里面的变量是空的
如果你非要用那个对象中的变量的话,那只好在构造对话框的时候把对象的指针传给dlg对象喽
另:如果你的test_card_speed变量并不于具体的对象有关系的话,可以把它作为类CSelUser的一个静态成员变量,这样的话就可以CSelUser::test_cart_speed引用了。这时的变量属于类而不是对象了,所有的对象都公用这样一个变量。
建议看一下C++的类与对象部分就什么都明白了
你所说的已经有值的对象并不是你在OnInitDialog()中使用的对象。
在OnInitDialog()中,你是重新构建了一个CSelUser的对象,这个对象跟你想要的对象显然不是一个,所以里面的变量是空的
如果你非要用那个对象中的变量的话,那只好在构造对话框的时候把对象的指针传给dlg对象喽
另:如果你的test_card_speed变量并不于具体的对象有关系的话,可以把它作为类CSelUser的一个静态成员变量,这样的话就可以CSelUser::test_cart_speed引用了。这时的变量属于类而不是对象了,所有的对象都公用这样一个变量。
建议看一下C++的类与对象部分就什么都明白了
#8
gz