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

调用自定义类中的结构体数组时出现如下异常,如何解决

2013-09-24 
调用自定义类中的结构体数组时出现如下错误,怎么解决 自定义类Public.h中的部分代码如下#include string

调用自定义类中的结构体数组时出现如下错误,怎么解决
 自定义类Public.h中的部分代码如下


#include <string>
#include <vector>
using namespace std;
staticstruct fileshuxing //定义结构体
{
 int FuMuLuCangKaoHao;    
 string FileName; 

};
 vector<fileshuxing>SXList; //定义结构体动态数组


在cpp文件中的部分代码如下:

#include "Public.h"
#include <vector>
using namespace std;
CPublic::fileshuxing TempShuXing; //定义结构体变量
TempShuXing.FuMuLuCangKaoHao=1;
TempShuXing.FileName="aaa";
CPublic::SXList.push_back(TempShuXing);


运行后提示如下错误 ,请大家帮忙看看 ,
error C2228: left of '.push_back' must have class/struct/union type
[解决办法]
把下面这句代码放到cpp文件中就是初始化了
std::vector<fileshuxing> CPublic::SXList;
 
[解决办法]
struct fileshuxing 是定义在类CPublic的外面还是定义在类内部的(嵌套类)
你用 CPublic::fileshuxing TempShuXing 怎么回事?

热点排行