ホームページ >バックエンド開発 >C++ >std::vector 要素は連続していることが保証されていますか?

std::vector 要素は連続していることが保証されていますか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-19 12:48:10797ブラウズ

Are std::vector Elements Guaranteed to Be Contiguous?

std::vector 要素の連続性

std::vector 要素が連続していることが保証され、 C 配列としてのベクトルの最初の要素ポインター。 C 98 標準には明示的な保証がありませんでしたが、連続性がなければ std::vector の要件を満たすことは困難でした。

C 0x 標準では、n2798:

「ベクトルは、... をサポートするシーケンス コンテナです。ベクトルの要素は連続して格納されます。つまり、v がベクトルであり、T が次の型である場合を意味します。 bool の場合、すべての 0 <= n < v.size() に対して恒等式 &v[n] == &v[0] n に従います。

これにより、std::vector 要素が実際に連続して格納され、最初の要素へのポインタを C 配列として使用できるようになります:

以上がstd::vector 要素は連続していることが保証されていますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。