問題タブ [stdarray]

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 投票する
2 に答える
220 参照

c++ - 複雑なデータ構造 (ベクトルの配列の配列の配列) を使用するとメモリ リークが発生する

次のように定義された複雑なデータ構造があります。

ここで、arrayvectorはand の略std::arraystd::vector、n_ports と n_times はunsigned ints andarcですstruct:

基本的に、トリプル (i,j,k) に0 <= i < n_times, 0 <= j < n_ports+2, 0 <= k < 2, 弧のベクトルを関連付けますが、その次元は先験的に知ることはできません。

これらのベクトルは順次作成されず、それらの要素も順次作成されませんpush_back

私が抱えている問題は、本来あるべきよりも多くのアークを持っていることに気づき、これらは以前に作成されたアークの痕跡であり、ベクトルのサイズを変更する必要があったときに別の場所に移動 (またはコピー?) したのではないかと疑っています。

これは、私が実際に取り組んでいることから始めて、問題を表示するために作成した、私がやっていることの最も最小限の例です

どんな助けでも大歓迎です。間違ったデータ構造を使用していますか? 私は自分の後に何かを片付ける必要がありますか?等

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

c++ - フィールドとしての std::array の構文は何ですか? 内部のオブジェクトは、パラメーターを取る ctor で構築する必要がありますか?

bar が提供するいくつかのパラメーターを受け取る ctor を使用して、この配列をいくつかの値で構築する必要があります。それらがすべて同じ値に構築されていれば問題ありません。後で適切な値を割り当てるため、初期化する必要があります。これをグーグルで検索し、さまざまな構文を試しましたが、何らかの理由で正しく取得できません。

0 投票する
5 に答える
40952 参照

c++ - std::array に、配列に値を入れるコンストラクタがないのはなぜですか?

の不在ですか

見落とし?私には非常に便利なようで、動的コンテナー ( などstd::vector) にも同様のコンストラクターがあります。

私は十分に承知している

しかし、それはコンストラクターではなく、メモリは最初にゼロになります。私 が すべてこの 人-1の ように なり たい と 思っ たら?

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

c++ - std::initializer_list から std::array のようなデータ構造を構築する方法

コンパイル時の定数サイズ(のような)でデータ構造を実装したいstd::array。このデータ構造を次のように初期化できるようにしたい:

これは、コンストラクター like: を使用して正常に動作しますが、コンパイル時に両方が既知であってもMyStruct(std::initializer_list<T> elements)、コンパイラーは内部構造体とに同じサイズを適用しません。elements

はコンパイル時定数ではないstatic_assertので使えません。elements.size()

elementsと同じサイズをコンパイル時に強制する方法はありますMyStructか?

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

c++ - オブジェクトのインスタンス化中に std::array クラス メンバの要素数を定義することは可能ですか?

列数が固定された文字列テーブルをオブジェクトとするクラスを作成したいと考えています。列数はオブジェクトの有効期間中固定されるため、std::arrayコンテナーから各行オブジェクトを宣言することにしました。

以下のコードは、このようなクラスを作成するための私の試みです。

エラーが表示されます (Visual Studio 2012 の場合):

このコードを実行することは可能ですか?

0 投票する
5 に答える
96737 参照

c++11 - std::array のデフォルトの初期化?

C++11では、構文が配列のすべての要素をデフォルトで初期化するstd::arrayという保証がありますか?std::array<T, N> x;

編集:そうでない場合、すべての要素をデフォルト値に初期化するために、すべての配列(サイズがゼロの配列を含む)で機能する構文はありますか?

EDIT : cppreferenceでは、デフォルトのコンストラクターの説明は次のように述べています。

したがって、答えはイエスかもしれません。しかし、標準または将来の標準に従って、それを確認したいと思います。

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

c++11 - C++では、for_eachを使用して配列を逆に反復する方法は?

C++11 では、lambda/for_each を使用して、配列を最後から反復するにはどうすればよいですか?

次のことを試しましたが、どちらも無限ループになります。

何か案が?ありがとう。