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

判断种或结构体是否初始化

2014-06-22 
判断类或结构体是否初始化C#中很简单,直接判断是否等于null即可C++中不行.有没有好的方法呢?//例如struct

判断类或结构体是否初始化
C#中很简单,直接判断是否等于null即可
C++中不行.有没有好的方法呢?


//例如
struct AAA
{
unsigned int id;
CString strName;
}
//测试方法
AAA funcA()
{
    AAA model;
    if(....)
    {
         model.id = 1;model.strName="sdf";
    }
   return model;
}


那么,有什么好的方法判断model是否赋值了?
只能通过添加默认model的默认构造函数来解决么?
[解决办法]
指针的话可以通过初始化NULL,然后判断是否为NULL来确定,对象的话没啥好办法吧
struct AAA
{
    unsigned int id;
    string strName;
    AAA()
    {
        id = 0;
        strName = "";
    }
};



int _tmain(int argc, _TCHAR* argv[])
{
    AAA model;
    if (model.id == 0 && model.strName == "")
    {
        printf("未赋值\n");
    }
    else
    {
        printf("已赋值\n");
    }

    return 0;
}

热点排行