問題タブ [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++ - (Boost 多次元配列ライブラリ) を使用して動的な 2 次元配列を構築する方法は?
ブースト多次元配列の使用について助けが必要です。(0 <= j <= 1) および (i) に従って動的に成長する 2 次元配列を作成する必要があります。
したがって、(不明な) 列と 2 行のテーブルを作成するようなものです。
Boost Library Web サイトで提供されている例から始めました。
問題は、その構造を微調整して目的の配列を構築するために、上記のコードを完全に理解していなかったことです。特に上記のようにこの配列が動的に成長する場合、Boost Library を使用しているときに、配列に要素を追加/配列から要素を削除する方法が正確にわかりません。
たとえば、ベクターを扱う場合、ベクターのサイズを変更した後にpush_backとpop_backを使用する傾向があります。
c++ - C++ 動的多次元配列の問題
私は2Dプラットフォーマーを開発しています。問題を解決するのが難しいまで、すべてがうまくいきました。レベルマップは動的多次元配列(char **map)に格納されます。再定義するまでは問題なく動作します
コードの一部は次のとおりです。
最初はすべて正常に動作しますが、配列を 2 回目に再定義する必要があるとき、配列が別の配列から新しい値を受け取るときに、その部分でプログラムがクラッシュします。私は何かを見逃しているかもしれませんが、私はそれを見つけることができません! 私はこの問題を探していましたが、私が間違っていることを見つけられませんでした。お願い助けて。
c - 「&(epage->incoming[0]) = spage;」の違い および "&(epage->incoming[p2]) = spage;"
この特定のコード ブロックの最後の行で、「割り当ての左オペランドとして左辺値が必要です」というエラーが生成されます。混乱は、最後の行でこのエラーがスローされ、最後から 2 番目の行ではスローされない理由にあります。
ここでspage
、epage
は以下で定義される構造体です。
関数find
は へのポインターを返しますstruct webpage
。
この問題は、構造体とポインタを double に変更し、最後の行を に変更することで解決されoutgoing
ましincoming
た(epage->incoming[p2]) = spage;
。
エラーが発生した理由はまだわかりませんが...
arrays - Linuxカーネルモジュールの動的配列
フィボナッチ数列を含むパケットを送信するためのPKTGENの変更に取り組んでいます。カーネル開発は初めてなので、メモリ割り当てに利用できる機能についてはあまり詳しくありません。私もCの第一人者ではありません:)
アルゴリズムの反復ステップを配列に格納します。誰かが素晴らしいフィボナッチ数パラメーターを要求した場合に動的になりたいと思います。
Reallocは使用できません。配列サイズを動的に拡大する方法を知っていますか?
ありがとうございました
c++ - C++ で動的配列が必要なのはなぜですか?
動的配列の必要性がわかりません。私がこれまでに理解していることから、実行時に必要な配列のサイズを常に判断できるとは限らないため、動的配列が必要です。
しかし、確かにこれを行うことができますか?:
では、動的配列とnew
演算子の重要な点は何でしょうか?
php - PHP 配列操作
私は配列を持っています$arr = array("name" => "Fom Xong" , "Sales" => "100");
この配列から、次のような文字列を生成したい
出来ますか???
前もって感謝します
php - 値をコンマで区切る文字列を配列に変換するPHPの最も効率的な方法は?
私はいくつかの検索を行いましたが、ほとんどの投稿はphp explode関数を使用して文字列を区切り、その値を配列に格納しています。
変換する効率的な方法が必要です:
配列に対して、を使用して単一の値にアクセスできるようにします$array[3]
。
爆発するよりも良い方法はありますか?
c++ - ベースポインタを介して派生オブジェクトの配列を削除するのが未定義の動作なのはなぜですか?
C++03 標準の の下に次のスニペットが見つかりました5.3.5 [expr.delete] p3
。
最初の選択肢 (オブジェクトの削除) では、削除するオブジェクトの静的型がその動的型と異なる場合、静的型はオペランドの動的型の基本クラスであり、静的型は仮想デストラクタまたは動作は未定義です。2 番目の選択肢 ( delete array ) では、削除するオブジェクトの動的な型がその静的な型と異なる場合、動作は未定義です。
静的型と動的型のクイック レビュー:
の静的タイプはp
ですがB*
、動的タイプ*p
はD
,1.3.7 [defns.dynamic.type]
です。
[例:
p
静的型が「へのポインタ」であるポインタが、から派生しclass B
た のオブジェクトを指している場合、式の動的型は「<コード>D」です。]class D
B
*p
virtual
さて、上部の引用をもう一度見てみると、デストラクタの存在に関係なく、次のコードが正しく行われた場合、未定義の動作が呼び出されることを意味します。
どういうわけか、標準の文言を誤解しましたか? 私は何かを見落としましたか?標準がこれを未定義の動作として指定するのはなぜですか?
c++ - 動的多次元配列
動的多次元配列、配列の配列と呼ぶのは適切ですか?
これを見ると、サイズ 7 の int の配列を指すポインターの配列であると言えます。しかし、動的配列は配列と見なされるのか、それともポインタによって返される単なるメモリのチャックと見なされるのでしょうか?
c++ - new と new[] の戻り値を区別する方法はありますか?
次のコードを検討してください。
予想どおり、結果は 4 です。次に、次の別のコードを考えてみましょう。
40 (割り当てられた配列のサイズ) を取得することを期待していましたが、結果はまだ 4です。
ここで、または でint *foo()
作成された構造体へのポインターを返す関数があるとします(ただし、どれかはわかりません)。new
new[]
p
私の質問は、単一の整数または整数の配列を指しているかどうかを知る方法 (またはハック)はありますか?
これは単なる理論的な質問であることを覚えておいてください。この方法で実際のコードを書くつもりはありません。