+ -
当前位置:首页 → 问答吧 → 结构体全局变量里面CString赋值问题求教

结构体全局变量里面CString赋值问题求教

时间:2011-12-26

来源:互联网

C/C++ code

typedef struct _ReaderInfo 
{
    CString ReaderName;
    CString strPortType;
    unsigned char uScanTries;
}ReaderInfo;

ReaderInfo g_ReaderInfo;
CString strPortType1 = "";

void Myfun()
{
    memset(&g_ReaderInfo,0,sizeof(ReaderInfo));
    g_ReaderInfo.ReaderName = "somestring";//程序崩溃,看CString m_pchData为00000000
    strPortType1 = "somestring"; //能正常赋值
}

我的疑惑是,在使用这个全局变量前,有没有必要memset一下它,那如果memset,那
CString的m_pchData就变为00000000了。

作者: hanyj_3000   发布时间: 2011-12-26

不能用memset的,CString是类,不是实际的空间

作者: keiy   发布时间: 2011-12-26

不要用Memset,自定义个构造函数吧

作者: flydreamGG   发布时间: 2011-12-26