いくつかの方法で初期化リストを使用して std::array を作成できます。ただし、これを試行すると GCC 4.6.1 でエラーが発生する可能性があります。
初期化リストを使用して std::array を作成するための構文は次のとおりです:
std::array array = { { value1, value2, ..., valueN } };
ここで、T は配列の要素の型、size は配列のサイズ、value1 から valueN は配列の初期値です。
std::arrayは集合体構造体であり、集合体で初期化することができます。構造体内の配列を集約初期化するには、追加の中括弧のセットを使用します:
std::array<:string> strings = {{ "a", "b" }};
この構文は、GCC で問題を引き起こす可能性がある初期化子リストを受け取るコンストラクターを回避します。 4.6.1.
C 11 標準では、集合体の初期化で余分な中括弧を省略できることが示唆されています。したがって、GCC 4.6.1 が追加の中括弧なしで std::array の初期化リストをコンパイルできないのは、コンパイラのバグである可能性があります。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3