からインデックスにある要素を取得しますか?私はこのような機能を持っているイテレータ
0
A
答えて
4
void func(vector<LatLng>::iterator it_start,
vector<LatLng>::iterator it_end)
{
int middle_index = (it_end - it_start)/2;
std::advance(it_start, middle_index);
LatLng& mid = *it_start;
}
または単に
LatLng& mid = *std::advance(it_start, (it_end - it_start)/2);
または
LatLng& mid = it_start[(it_end - it_start)/2];
またはstd::next
を使用して:リストに対しても動作します
LatLng& mid = *std::next(it_start, middle_index);
+1
私は彼が 'it_start'を進めたいと思っています。そして 'std :: next'の記述も良いでしょう。 –
1
より再利用可能なソリューション(あなたがそれを作る場合は、テンプレート機能または変更パラメータ:std::list<T>::iterator
)は次のようになります。
void func(vector<LatLng>::iterator it_start,
vector<LatLng>::iterator it_end)
{
auto &mid = *std::next(it_start, std::distance(it_start, it_end)/2);
}
関連する問題
- 1. 私はこのような機能を持っているPHP
- 2. は、私はこのような機能を持っていスウィフト
- 3. は、私が機能を持っているデータのイテレータ
- 4. jQueryのは、私はこのような機能は持って
- 5. は、私はこの機能を持っているJS機能
- 6. は、私はこのような機能を持っているスクリプト
- 7. こんにちは私はこのようなものですクラスの機能を持っている機能
- 8. パス私はこのような二つの機能を持っている
- 9. Oracle。選択し、私はこのような機能を持っている
- 10. python |私はこのような機能を持っていてもブレーク
- 11. 私はこの小さな機能を持っているPHP
- 12. は、私はこのような機能の多くを持っている機能
- 13. 次のように私は機能を持っているモカ
- 14. 私のHaskellのプログラムは、私のような機能を持っている
- 15. R - 私はこのように見える機能を持っているlapply
- 16. roxygen2は、私がこのような機能を持って適切な.Rdファイル
- 17. どのように私は、ファイルin.jsこの機能を持っている
- 18. 私はこのコードを持っているこの機能
- 19. 私はこのように書き機能を持っている
- 20. performSelector:onThread:withObject:私は機能を持っている私の機能
- 21. Javascriptがだから私は、このようなのような機能を持っているノード
- 22. 機能は、私はこれを行うことを意図している機能を持っている
- 23. PHP CodeIgniterのは:私は以下のような機能を持っている
- 24. 私は機能を持っている
- 25. は、私はエクセルVBAで、この機能を持っている
- 26. は、私はこの機能を持っている
- 27. カントは、私はこの機能を持っているベクトル
- 28. キャスティングタイプは、私はこの機能を持っている構文
- 29. JSは、私はこのコードを持っている機能
- 30. は、私はこの機能を持っているddply
これは、 'it_start!= it_end'の場合にのみ安全です。 –