なぜstd::pair
イテレータがないのですか?
std::pair
iterator
およびconst_iterator
と をbegin()
、end()
その 2 人のメンバーに対してのみ提供する必要があります。
vector
そうすれば、や のような反復可能オブジェクトを期待するテンプレート化された関数に渡すことができるので便利だと思いますset
。
これには何か欠点がありますか?
ベストアンサー1
理由の 1 つは、ペアの 2 つの要素が異なる型になる可能性があることです。これはイテレータ モデルに適合しません。
同じことがタプルにも当てはまり、反復子があるとさらに魅力的になるかもしれません。
安価なものが必要な場合は均質な固定長のコンテナの場合は、 を使用できますstd::array<T, n>
。