当结构体中有map成员变量的时候,不能进行初始化,否则在插入操作的时候,会出现异常。
eg:
typedef struct {
int match[200];
}LocMatch_DEF;
/* here string contains item */
typedef map<string, LocMatch_DEF> MAP_Loc_DEF;
typedef struct {
MAP_Loc_DEF MyLoc;
}MyMAPLoc_DEF;
/* here string contains subnode */
typedef map<string, MyMAPLoc_DEF> MAP_LocMatch_DEF;
下面是具体调用的过程。
MAP_CDR_FILE_DEF::iterator iterfile;
iterfile = mapCdrFile.begin();
SqStack S;
InitStack(&S);
for(; iterfile!=mapCdrFile.end(); iterfile++)
{
LIST_FIELD_DEF::iterator iterfield;
string tempstr;
tempstr.assign((*iterfile).first);
iterfield = mapCdrFile[(*iterfile).first].listCDRField.begin();
MyMAPLoc_DEF MymapLoc;
MAP_Loc_DEF maploc;
// memset(