ベクトル<配列>
C では、ベクトルはオブジェクトのコレクションを格納するための強力なコンテナです。ただし、配列をベクトル内に直接格納しようとすると、float 配列のベクトル (vector
この問題これは、配列がコンテナ要素として本質的にサポートされていないために発生します。コンテナでは、保存された要素がコピー構築可能で割り当て可能である必要がありますが、配列はこれらの要件を満たしていません。
解決策: 配列クラス テンプレートの利用
この制限を克服するには、次のようにします。生の配列の代わりに配列クラス テンプレートを使用することをお勧めします。 Boost、TR1、C 0x などの C ライブラリは、コピーの構築性と割り当て性を提供する配列テンプレートを提供します。
たとえば、C 0x が提供する配列クラス テンプレートを使用します。
std::vector<std::array<double, 4>>
または、C TR1 または Boost に組み込まれている配列テンプレートを利用できます。ライブラリ:
std::vector<std::tr1::array<double, 4>> // or std::vector<boost::array<double, 4>>
カスタム配列クラス (オプション)
必要に応じて、コピー構築と代入を実装する独自の配列クラスを作成して、コンテナーとの互換性を確保することもできます。使用法。
以上がC ベクトル内に配列を適切に保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。