首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

作用域的有关问题,好郁闷

2012-02-20 
作用域的问题,好郁闷?classCPowerUpdateDlg:publicCDialog{private:CStringm_strRecvData//(我在下面初始

作用域的问题,好郁闷?
class   CPowerUpdateDlg   :   public   CDialog
{
private:
    CString   m_strRecvData;//     (我在下面初始化为空)
}

void   OnCommunication(   WPARAM   ch,   LPARAM   port   );

void   CPowerUpdateDlg::OnCommunication(WPARAM   ch,   LPARAM   port)
{
        m_strRecvData   =   "da   jia   ok? ";
}

BEGIN_MESSAGE_MAP(CPowerUpdateDlg,   CDialog)
//{{AFX_MSG_MAP(CPowerUpdateDlg)
ON_MESSAGE(WM_COMM_RXCHAR,   OnCommunication)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

这是CSerialPort类中读取字节的常用用法,每收到一个字节触发WM_COMM_RXCHAR事件,及触发OnCommunication函数。

我在这个函数里假设对成员变量m_strRecvData赋了初值,MessageBox也能正确显示出它的值为 "da   jia   ok? "。但是我在这个函数之外用m_strRecvData这个成员变量时它就为空值。

不只是什么原因,感觉好像作用域的问题,又不太像。好郁闷。

请教一下
谢谢!!


[解决办法]
你这个函数还没执行完,当然不会去响应新消息的。
消息驱动这个体系原理你还很混呀。

热点排行