我有以下向量:
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 中,遍历所有元素(iterator
has operator++
;结束条件是 - 检查迭代器是否已到达end
容器的,例如iter != myContainer.end()
:)operator->
.std::pair
就像一个具有两个字段的结构 -first
和second
,因此您可以打印向量的元素,例如:iter->first
和iter->second
。