0
我有3種類型的列表,我試圖根據attribute_type打印它們。 所以根據attribute_type選擇迭代器。 問題是,如果例如attribute_type ==「pis」,if條件被執行,但是當它完成時它返回到上面的decleration:QMapIterator它(pit.item_parameters),所以這樣迭代器無效... 我應該申報嗎?QMapIterator聲明的幾個列表問題
QMapIterator<QString, IP> it(pit.item_parameters);
if (attribute_type == "ips") {
QMapIterator<QString, IP> it(pit.item_parameters);
if (pit.item_parameters.isEmpty()) { return; }
}
else if (attribute_type == "variables") {
QMapIterator<QString, Variable> it(pit.variables);
if (pit.variables.isEmpty()) { return; }
}
else if (attribute_type == "pis") {
QMapIterator<QString, PI> it(pit.pis);
if (pit.pis.isEmpty()) { return; }
}
while(it.hasNext())
{
it.next();
text += it.key();
text += it.value().type;
}