問題タブ [stack]
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++ - オブジェクトのリストをヒープまたはスタックに格納する必要がありますか?
オブジェクト(B)で構成されるリストを持つオブジェクト(A)があります。リスト(B)のオブジェクトはポインタですが、リスト自体をポインタにする必要がありますか? Java から C++ に移行していますが、まだスタック/ヒープに完全に慣れていません。リストはクラス A の外では渡されず、リスト内の要素のみが渡されます。念のため、リスト自体をヒープに割り当てることをお勧めしますか?
また、list(A) を含むクラスもヒープ自体に配置する必要がありますか? リストと同様に、渡されません。
assembly - 最新のシステムにおけるスタックの成長の方向性は?
C でいくつかのトレーニング資料を準備しており、サンプルを典型的なスタック モデルに適合させたいと考えています。
Linux、Windows、Mac OSX (PPC および x86)、Solaris、および最新の Unix では、C スタックはどの方向に成長しますか?
c# - メニュー スタックの作成
最終的に選択したデータを呼び出し元のメソッドに返しながら、前後に移動できるメニュー システムを作成しようとしています。
たとえば、 orderFood() メソッドは、注文できる食品の種類の選択肢のメニューを表示します。誰かがシーフードを選択すると、シーフード() メソッドが実行され、注文できるシーフードの種類を照会して表示します。
ユーザーがフィッシュスティックを選択すると、オーダーフードを呼び出したメソッドにフィッシュスティックが返されます。同様に、このメニュー システムでは、ユーザーは前のメニューに戻ることができます。
私は(C#を使用して)この種の効果を得るにはリフレクションと安全でないコード(ポインター)を使用する必要があると考えていますが、これを行うためのより簡単な方法があると確信しています。助言がありますか?
ありがとう、マイケル
c - Cでの奇妙なスタック動作
Cでのスタックの振る舞いについて何か誤解しているのではないかと心配しています。
次のコードがあるとします。
両方のプリントアウトで同じアドレスを取得できないのはなぜですか?temp1がリサイクルされなかったかのように、temp2がtemp1から1int離れていることがわかりました。
私の期待は、スタックに20と25が含まれることです。次に、temp1を上に置き、次にそれを削除し、次にtemp2を上に置き、次にそれを削除します。
MacOSXでgccを使用しています。
最適化せずにコンパイルするために-O0フラグを使用していることに注意してください。
この質問の背景について疑問に思っている人:私はCの教材を準備しており、関数から自動変数へのポインターを返すことを避けるだけでなく、からの変数のアドレスを取得することも避けるべきであることを生徒に示しようとしています。ネストされたブロックとそれらを外部で逆参照します。これがどのように問題を引き起こすかを実証しようとしていたのですが、スクリーンショットを取得できませんでした。
c++ - スタックではなくヒープ上にある配列を C++ で作成するにはどうすればよいですか?
長さが262144要素でなければならない非常に大きな配列があります(将来的にはさらに大きくなる可能性があります)。次のようにスタックに配列を割り当てようとしました:
ただし、特定のポイントを超えて要素を追加しようとすると、それらにアクセスしようとすると値が異なるようです。これは、より多くのメモリを持つヒープとは対照的に、スタックには有限の量のメモリしかないためであると理解しています。
私はあまり運がなくても次のことを試しました(コンパイルしません):
そして、 を使用することを検討しmalloc
ましたが、これを行う C++ のような方法があるかどうか疑問に思っていました...
私はただ一緒に行くべきmalloc
ですか?
c++ - 実行時のポインタと参照を区別するANSIC++
実行時にポインタと参照をどのように区別しますか?たとえば、データ型のポインターがポインターであるかどうかを知らずに解放したい場合、どうすればよいでしょうか。変数がスタックに割り当てられているのか、malloc()を介して割り当てられているのかを判断する方法はありますか?
algorithm - getMinimum()がO(1)になるようにスタックを設計します
これは面接の質問です。
getMinimum()
関数がスタック内の最小要素を返すように、整数値を保持するスタックを設計する必要があります。例えば:
ケース#1
5 ← TOP14
6
2getMinimum()が呼び出されると、スタック内の最小要素である1を返す必要があります。
ケース#2
stack.pop()
stack.pop()
注:5と1の両方がスタックからポップされます。したがって、この後、スタックは次のようになります
4 ←
TOP62が
getMinimum()
呼び出されると、スタックの最小値である2を返す必要があります。制約:
- getMinimumは、O(1)の最小値を返す必要があります
- スペースの制約も設計時に考慮する必要があり、余分なスペースを使用する場合は、一定のスペースにする必要があります。