【发布时间】:2013-03-30 08:43:02
【问题描述】:
这是非常基本的,但我在这里找不到类似的问题。我正在尝试使用 list 从不同方向迭代相同的排序 STL 列表。我知道我可以将迭代器与list.begin() 和list.end() 进行比较,那么为什么这不起作用?
list<family>::iterator itLargeFamily =
families.begin(); //starts from the biggest families
list<family>::iterator itSmallFamily =
families.end(); //starts from the smallest families
for (; itSmallFamily > itLargeFamily; --itSmallFamily, ++itLargeFamily) {
// stuff...
}
错误当然是
no operator > 匹配这些操作数
100% 的机会我错过了一些基本的东西。
【问题讨论】:
-
你想通过这种比较来达到什么目的?
-
使用两个独立的迭代器在列表中移动。上面的 itSmallFamily-- 和 itLargeFamily++ 是为了简化示例。我需要彼此独立地推进/减少它们。