問題タブ [aggregate-initialization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
399 参照

c++ - 'int' から非スカラー型 conts 'Vec2' への変換が要求されました

私は C++ の初心者で、ヘビを作ろうとしていますが、問題があります。

エラーの行:

そして、ここにコードがあります:

では、どうすればこの問題を解決できますか?

0 投票する
0 に答える
254 参照

c++ - プライベート集計の初期化

集約クラスprivate集約初期化として定義することは可能ですか? クラスは、独自の静的プライベート メンバーによってのみ集約初期化できるようにしたいと考えています。

例:

0 投票する
2 に答える
5692 参照

c++ - 集約初期化とメンバー初期化子による構造体の初期化

次の例を検討してください。

id clang 3.x および gcc 4.8.x のデフォルト値なしで構造体 ABC を定義すると、コードは問題なくコンパイルされます。ただし、「id」のデフォルト引数を追加すると、次のようなエラー メッセージが表示されます。

技術的な観点から、デフォルトの引数で id を定義するとどうなりますか?また、その場合、集計の初期化ができないのはなぜですか? ある種のコンストラクターを暗黙的に定義しますか?

0 投票する
1 に答える
371 参照

c++ - std::array 集約の初期化とテンプレートの整数型

ドキュメントから、次のstd::arrayように初期化できることがわかります (集約初期化を使用)。

とにかく、この場合、問題が発生します。

構築中に配列を初期化するにはどうすればよいですか (インデックスを渡す ed 関数を使用するか、からsの値を使用する例として)?0N-1constexpr

0 投票する
0 に答える
102 参照

c++ - コンストラクターはあるが集約の初期化がない POD 型

私はこれらを持っているC ++のPODタイプについて混乱していますstruct HSVstruct RGB これは、カラーを構築するための値の累積です:

struct RGB次のように、C のような集約初期化でa を初期化できます。

ただし、追加のコンストラクターのコメントを外してstruct RGBastruct HSVdefaulted のデフォルト コンストラクターをビルドすると、集計の初期化が機能しなくなります。

ただし、手元に POD があることは引き続き通知されます。

私が持っているような変換コンストラクターを使用しながら、C スタイルの集計初期化を使用できますか、それとも不可能ですか?

編集:これがclang拡張機能であることが通知されました(VSコンパイラでも可能のようです)。しかしclang、少なくともそれが可能かどうかはまだ疑問です。

0 投票する
2 に答える
70 参照

c++ - std::array 型の初期化

astd::arrayを使用すると、次のように初期化できます。

独自の配列クラスを作成しようとしている場合、どうすれば同様のことができますか?

0 投票する
0 に答える
352 参照

c++ - 構造体集約の初期化とデフォルト コンストラクターの比較

構造体の次の初期化が与えられた場合:

明示的に定義されている場合、これは常に集約の初期化を行いますか、それともStruct()代わりにコンストラクターが呼び出されますか?

0 投票する
3 に答える
373 参照

c++ - 集約の初期化を伴う C++11 コンストラクターの委譲

デフォルト ctor の独自の定義内で集約の初期化を呼び出すことは可能ですか?

GCC は、次のコードで「エラー: コンストラクターがそれ自体に委任されています」と文句を言います。

memset(this, 0, sizeof(*this))現在ctor本体で使用しています。

0 投票する
3 に答える
5084 参照

c++ - プライベートコンストラクターがプライベートコンストラクターではないのはいつですか?

型があり、そのデフォルトのコンストラクターを非公開にしたいとしましょう。私は次のように書いています。

偉大な。

しかし、その後、コンストラクターは私が思っていたほどプライベートではないことが判明しました。

これは、非常に驚​​くべき、予想外の、明らかに望ましくない動作だと思います。なぜこれでOKなの?

0 投票する
0 に答える
27 参照

c++ - 集合体の型特性

ワーキング ドラフトの8.5.1/1によると、集約、ユーザー提供のコンストラクター、プライベートまたは保護された非静的データ メンバー、基底クラス、および仮想関数を持たない配列またはクラスです。

タイプでそのような機能を検出する方法または特性はありますか?
例としてis_polymorphic、クラスなどの場合と同様です。集合であれば真、そうでなければ真
となる型のようなもの。is_aggregate<T>::valueTfalse

私はそれを使用して定義できると思いis_arrayます...他に何がありますか? 残念ながら、それについてはわかりません。
このような型を定義する方法が少なくとも存在しますか?