Q&A
【C++】std::multisetのイテレータからインデックスを取得する方法はありますか?
例えば、std::vectorのイテレータからインデックスを取得する方法は、以下の方法があり、高速です。しかし、std::multisetのイテレータ同士ではこのような減算が行えません。今のところ、std::distanceを使う方法しか調べられず、これだと少し遅いので、std::distance以外の方法を探しています。
C++
1vector<int> v; 2auto it = 何らかの方法でイテレータを取得; 3int index = it - v.begin(); // indexを取得できた
(あくまで予想ですが、std::multisetの構造的に、イテレータからインデックスを取得することが高速に出来ないのでは…と思っていますが…)
回答1件
良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。