我有以下向量:
std::vector< std::pair<std::string,bool > > myvec;
如何使用迭代器浏览和打印向量的元素?
你有什么问题?
typedef std::vector<std::pair<std::string, bool> > vector_type;
for (vector_type::const_iterator pos = myvec.begin();
pos != myvec.end(); ++pos)
{
std::cout << pos->first << " " << pos->second << std::endl;
}
或者你可以使用std::for_each一些仿函数。
Container::iterator iter = myContainer.begin():)for-loop 中,遍历所有元素(iteratorhas operator++;结束条件是 - 检查迭代器是否已到达end容器的,例如iter != myContainer.end():)operator->.std::pair就像一个具有两个字段的结构 -first和second,因此您可以打印向量的元素,例如:iter->first和iter->second。