假设我有一个多重集A = {0,1,1,1,2}。如果执行以下操作:
multiset<int>::iterator it = A.lower_bound(2)
它返回一个迭代器。我可以轻松打印它的值。但是有什么办法知道它的位置吗?我的意思是它将返回4。
最佳答案
#include <iterator>
#include <set>
int main()
{
multiset<int> A = { 0, 1, 1, 1, 2 };
multiset<int>::iterator it = A.lower_bound( 2 );
size_t dist = distance( A.begin(), it );
}
关于c++ - 多集lower_bound迭代器的位置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34237612/