問題タブ [dynamic-arrays]
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.
c++ - C ++で2D動的配列を削除する際の問題(最終的にはベクトルに格納されます)
だから私はこの2D動的配列を持っています。それが終わったらコンテンツを解放したいのです。しかし、デストラクタの後でヒープの破損に遭遇し続けます。デストラクタをコメントアウトすると、コードは正常に機能します(もちろんメモリリークが発生します)。(Visual Studio 2005)
コードのどこが悪いのかわかりません。唯一の別のことはどこか別の場所です、私はクラッシュが発生したループでこれを行いました
これは問題を引き起こしてはいけませんよね?私の記憶が正しければ、push_backはポインタや参照を格納する代わりにコピーを作成します。
PS。はい、ベクトルを使用する必要があります。しかし、私は許可されていません。
追加情報:
operator=およびcopyコンストラクターは定義されていません。それが問題の理由だと思います。
c++ - 静的に次元付けされた配列の C++ 動的に割り当てられた配列
可変数の「char[2]」、つまり 2 文字の静的配列を保持する構造を作成する必要があります。
私の質問は、x 個の char[2] にメモリを割り当てる方法です。
私はこれを試しました(int xが定義されていると仮定します):
(うまくいきませんでした)
std::vector<char[2]> をコンテナーとして使用できることはわかっていますが、生のポインターでどのように行われるかについて興味があります。
私は C++ が初めてで、学習しようとしています。
c++ - C++ 動的配列アクセス違反
**** 元の投稿の numCars に関する混乱について申し訳ありません。元の********と一致するようにコードを変更しました
次のアカデミック プログラムは、元の問題を簡略化したものですが、私がまだ解決していない問題に焦点を当てています。この問題には 2 つのクラスと main メソッドがあり、2 つのクラスは Dealer クラスと Car クラスで構成されます。Dealer クラスには、Dealer のコンストラクターで動的配列に初期化されるプライベート Car* ポインターがあります。ディーラーの addCar メソッドが呼び出されると、メイン メソッドでエラーが発生します。main メソッドでは、意図的に Dealer 変数を addCar(Dealer& d) メソッドに渡して、元のアプリケーションの構造を模倣しています。次に addCar メソッドは、cars[numCars++]=car; を実行するとアクセス違反が発生するディーラーの addCar(const Car& car) メソッドを呼び出します。cars[numCars++]=car がアクセス違反になる理由を説明できますか
:numCars(0) {cars = new Car[maxCars];}
setNumCars(int count){numCars = count;}
c++ - C++ 配列サイズ x86 および x64 の場合
簡単な質問です。私は巨大な画像ファイル (8kx8k) を開く必要があるプログラムを書いていますが、c++ で画像を保持するために巨大な配列を初期化する方法について少し混乱しています。
私はこのようなことを試みています:
しかし、配列が初期化されていないことを NULL チェックでキャッチできないことがあります。
また、12 GB の RAM を搭載した x64 マシンで実行している場合でも、2 つまたは 3 つ以上のアレイを初期化できません。
代わりに、配列のセクションを操作する必要がないようにしたいと思います。どんな助けでも大歓迎です。
ありがとう。
c++ - gdbを使用してC++動的配列を「監視」する方法は?
次の例を検討してください。
配列全体の監視を追加するにはどうすればよいですか? ウォッチを 1 つずつ追加できます ( kk[0]、kk[1] ...) が、配列の長さがわかっているので、自動的に行う方法はありますか? 私はkk[0..size-1] のようなものを意味します。
NetBeans IDE を cygwin g++ および gdb と一緒に使用しています。
c++ - C ++-サイズ1の動的配列と同じ単一の値へのポインターですか?
簡略化することを検討しているこのコードスニペットがあります。
(私には「選択の余地はありません」が、ここでは単純な動的配列を使用します。私の職場では、ベクトルは「複雑すぎる」と見なされます)
私は私が逃げることができるかどうか疑問に思っています
しかし、私はいくつかの点で結果の数をチェックし、それに応じて行動しています
それらのコードはまだ機能しますか?そうでない場合、なぜですか?
delphi - Delphi 動的配列にはどのような簿記データが含まれていますか?
これは、メモリ割り当てをチェックする簡単なプログラムです。タスク マネージャーで前後の値を確認すると、各動的配列がサイズ = 1 で 20 バイトのメモリを占有することが示唆されます。要素のサイズは 4 であり、これはブックキーピング データの 16 バイトのオーバーヘッドを意味します。
system.pas を調べると、-4 バイトの配列長フィールドと -8 バイトの参照カウントを見つけることができますが、他の 8 への参照を見つけることができないようです。
サンプルプログラム: