引言

若只是单独的遍历容器,不修改容器中元素的值,可以使用foreach来实现,比使用迭代器来遍历元素更简洁,使用foreach迭代器是创建了原来容器的副本,所有不能修改容器中数据。下面看两个示例。

示例

示例一

遍历QMap容器中的参数:

QMap<QString,int> map;
foreach(const QString str,map.keys())
{
	qDebug()<<str<<":"<<map.value(str);
}

示例二

遍历QMultimap中的元素:

QMultimap<QString,int> mapMul;
foreach(const QString str,mapMul.uniqueKeys())
{
	foreach(int value,mapMul.values(str))
	{
		qDebug()<<str<<":"<<value;
	}
}

当容器是一键多值的时候采用双循环的方式。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐