gpt4 book ai didi

c++ - QMap 中的项目丢失

转载 作者:行者123 更新时间:2023-11-30 05:26:25 24 4
gpt4 key购买 nike

<分区>

我有一个 XML 文件,其中包含一些具有名称和用户列表的组。在我的构造函数代码中,我为此列表设置了一个字典:

dictGroups= QMap<QString, QList<QString>>() ;

在头文件中声明为

public:
QMap<QString, QList<QString>> dictGroups;

然后我读取文件:ReadConfig();

void AppConfig::ReadConfig(void)
{
...
while(!reader.atEnd())
{
ReadGroups(reader);
if (dictGroups.isEmpty()) qDebug()<<"ReadConfig_isEmpty";
}
...

这是我的阅读组:

void AppConfig::ReadGroups(QXmlStreamReader &reader)
{
dictGroups.clear();
while(!reader.atEnd())
{
reader.readNext();
if (reader.error())
{
...
}
else
{
if (reader.isStartElement())
{
if (reader.name().toString().toLower()=="group"){
ReadGroup(reader);
if (dictGroups.isEmpty()) qDebug()<<"ReadGroups_isEmpty";
}
}
else if (reader.isEndElement())
{
if (reader.name().toString().toLower() == "groups")
{
if(dictGroups.count()<=0){
QList<QString> users= QList<QString>();
users.append(this->GetUsername());
dictGroups.insert("admin", users);
}
return;
}
}
}
}
}

我的问题是,在 ReadGroups 中插入 dictGroups 的项目丢失了。我得到了调试输出

ReadConfig_isEmpty

但在 ReadGroups 中似乎一切正常。不知所措,百思不得其解,谁能帮忙找出原因?

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com