問題タブ [struct]
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#で自動プロパティを使用するために構造体で:this()を呼び出す必要があるのはなぜですか?
次のような自動プロパティを使用して C# で構造体を定義するとします。
ファイルをビルドしようとすると、コンパイル エラーが発生しますThe 'this' object cannot be used before all of its fields are assigned to
。これは、コンストラクターを変更して、次のようにデフォルトのコンストラクターへの連鎖呼び出しを行うことで解決できます。
私の質問は、なぜこれが機能するのか、何が起こっているのかということです。私は推測を持っており、IL を見てそれを証明しようとしましたが、IL を分解できると思うかどうかは冗談です。しかし、自動プロパティは、コンパイラが舞台裏でプロパティのフィールドを生成することで機能すると思います。これらのフィールドにはコードからアクセスすることはできません。すべての設定と取得は、プロパティを通じて行う必要があります。構造体を作成するとき、既定のコンストラクターを明示的に定義することはできません。そのため、舞台裏では、開発者が見ることができないフィールドの値を設定するデフォルトのコンストラクターをコンパイラーが生成している必要があります。
すべての IL ウィザードは、私の理論を証明または反証することを歓迎します。
c - Cの関数に構造体型の値を渡す
" " をフォーマットするにはどうすればよいsomething_of_type_element
ですか?
ありがとう
注: nat は int と同じです
memory - MATLAB で大量の構造体を処理する
大量 (数千万) の MATLAB 構造体を処理する必要があります。十数個のフィールドが必要だったので、これを発見するまでメモリは問題にならないと考えました (説明)
これは明らかに、何千万ものはるかに大きな構造体を使用することを妨げています。
クラスに頼ると、メモリ使用量の問題 (構造体配列ごとに 56 バイトのマークアップ) は解決されますが、オブジェクトの構築と破棄が非常に遅くなります。
軽量 (C 構造体のような) で高速な構造体を作成するにはどうすればよいですか?
c - Cの構造体での「「void *」ポインタの逆参照」警告の解決策は?
構造体の配列を出力するための疑似スーパー構造体を作成しようとしていました。私の基本的な構造は次のとおりです。
上記の構造体の配列を出力するために、以下の構造体を作成しました。以下のコード スニペットのコンパイル中に void ポインター エラーを逆参照しました。
私の意図は、すべての配列を印刷する共通の機能を持つことです。正しい使い方を教えてください。
事前に助けに感謝します。
編集: パラメータ名が cmncnt から cmncntin に変更されました。すみません、タイプミスでした。
ありがとう、マシュー・リジュ
c# - 新しい構造体を作成して返すときにこのエラーが発生するのはなぜですか?
このコードをコンパイルするとエラーが発生します。
こんにちは!
コンパイラは、「割り当てられていないローカル変数 'vector' の使用」と言い、戻り値を指します。Vector2 が参照型になっているように見えます (イベント メンバーなしでは正常に動作します)。何が起こっている?
c# - C# で構造体の配列を初期化する
構造体の const / static 配列をできるだけ明確に初期化するにはどうすればよいですか?
java - Javaでクラスを構造体として使用するのはなぜ悪い習慣なのですか?
最近、コード レビューがありました。メソッドとの間で複数のタイプのデータを返す/渡すことができるように、クラスの 1 つが使用されました。クラスが持っていた唯一のメソッドはゲッター/セッターでした。チームのメンバーの 1 人 (私はその意見を尊重します) は、そのようなクラスを持つことは悪い習慣である (そしてあまり OOP ではない) と言いました。何故ですか ?
c - Cでのmemcpyと代入
どのような状況で memcpys が最新の INTEL/AMD ハードウェアの割り当てよりも優れていると期待できますか? 私は 32 ビット Intel プラットフォームで GCC 4.2.x を使用しています (ただし、64 ビットにも関心があります)。
c# - C++ CLI 構造体からバイト配列へ
ワイヤ形式のパケットを表す構造があります。この構造体には、他の構造体の配列があります。ほとんどのケースでこれを非常にうまく処理する汎用コードがありますが、この構造体の配列のケースはループのマーシャラーをスローしています。
配列を持つ構造体へのポインターを取得できないため、アンセーフ コードは使用できません (ぐーん!)。
このコードプロジェクトの記事から、次のような C++/CLI を含む非常に優れた一般的なアプローチがあることがわかります...
今、構造があれば -> バイト配列 / ライターのバージョンが設定されます! 前もって感謝します!
c - C プログラミング言語標準に従って構造体を初期化する方法
構造体要素を初期化し、宣言と初期化に分割したい。これは私が持っているものです:
MY_TYPE
これは、C プログラミング言語標準 (C89、C90、C99、C11 など) に従ってのローカル変数を宣言および初期化する方法ですか? または、より良いもの、または少なくとも機能するものはありますか?
更新必要に応じてすべてのサブ要素を設定する静的な初期化要素ができました。