14

任意の型 T の組み込み配列 x が与えられた場合、呼び出すことができる関数std::begin()と関数がありますが、関数std::end()がないのはなぜstd::size()ですか? それがないのは奇妙に思えます。

を使用することもできますstd::end(x)-std::begin(x)が、それでも a のstd::size(x)方がよいでしょう。

はい、私はstd::vectorstd::arrayクラスを知っています。これは、なぜこれほど単純なものがまだ STL で利用できないのかという問題です。

4

4 に答える 4

2

STL アルゴリズムは、コンテナーではなくイテレーターで機能します。STL コンテナーのサイズには開始と終了が必要であり、意味がありません。そのようなものについては、すでに持っていますstd::distance

于 2013-10-08T20:54:35.830 に答える