0
我在使用C++中的set :: iterator時遇到了一些問題。我有一組二維點,我需要迭代和比較這些點三個。等價迭代器
我的想法是使用三個循環遞增迭代器,逐個。但是C,當我試圖++給了我一個錯誤:
for (set<pair<double, double> >::iterator i = S.begin(); i != S.end(); i++){
for (set<pair<double, double> >::iterator j = i+1; j != S.end(); j++){
...
}
}
編輯:錯誤是「錯誤:沒有對應於‘我+ 1’‘運營商+’」
請注意'std :: next()'是一個C++ 11功能。但是如果你還沒有達到C++ 11的標準,你也可以從Boost中獲得它。 –
非常感謝。這樣可行。 – Guilherme
@FredLarson或自己編寫'next':'template I next(I in,D n = 1){std :: advance(in,n);返回;}' –
Yakk