問題タブ [static-array]

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 に答える
576 参照

c++ - メソッドポインタの静的配列

理解できないエラーに直面しています。

メソッドポインタの静的配列を作成して使用しようとしています。私のクラスの宣言は次のようになります。

私の.cppファイルで初期化は次のように行われます。

ここに問題があります。私のクライアントのクラスメソッドの1つで、このメソッドポインタの配列を使用しようとしています。私はいくつかの方法を試しました、例えば:

私は問題を理解していないと言いました、理由を説明させてください。私のコードでmakeを実行すると、適切にコンパイルされます。リンク時に問題が発生します。

このメッセージは5回繰り返されます。

どんな助けでも大歓迎です。ありがとうございました。

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

java - Java:汎用静的多次元配列

可能であれば、次元ごとに異なるプリミティブデータ型を使用してJavaで静的多次元配列を作成するにはどうすればよいですか?

静的とは、ArrayListのように動的ではないプリミティブ配列を意味します。

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

c++ - C++ でクラスの静的配列メンバーを初期化するより良い方法 ( const が優先されます)

クラスのメンバーとして、関数へのポインターの静的配列があります。

初期化する必要がありますが、この配列は 64K アイテムの長さであることが判明したため、静的イニシャライザーで初期化することは、{ x, y, z, ... }コードが乱雑になるため現実的ではありません。

代わりに、いくつかのループを使用してコードで初期化する必要があります。

私がこれを行う方法は、コンストラクターで配列を初期化し、staticそれにフラグを設定することです。そのため、クラスの最初のインスタンスの構築のみがこの初期化を起動します。

また、インスタンス内からこの静的フラグにアクセスすることはスレッドセーフではありませんが、それは別の話です。

これを行うためのよりクリーンまたはより良い方法はありますか?

私もこの配列を にしたいのですがconst、それを行う唯一の方法はstatic {}初期化ですよね?

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

d - 静的配列を持つポイントは何ですか

私は C や C++ の経験がないので、静的配列には少し戸惑います。それらは何のため?それらがスタックに割り当てられるのはなぜですか?

パフォーマンス上の利点があると思います。スタック割り当てが高速になり、ガベージ コレクションが不要になります。しかし、なぜコンパイル時に長さを知る必要があるのでしょうか? 実行時に固定サイズの配列を作成し、スタックに割り当てることはできませんでしたか?

D の動的な配列またはスライスは、ポインターと長さのプロパティを含む構造体によって表されます。静的配列にも同じことが当てはまりますか? それらはどのように表されますか?

それらを関数に渡すと、(ref を使用しない限り) 全体がコピーされますが、その背後にある理論的根拠は何ですか?

D では動的配列とスライスが静的配列よりもはるかに重要であることを認識しています。そのため、ドキュメントではそれらについてあまり詳しく説明していませんが、もう少し背景を知りたいと思っています。静的配列の特殊性は、スタック割り当ての仕組みに関係していると思います。

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

c - 構造体のプリセット配列を別の構造体に配置するにはどうすればよいですか?

私はCで単純であるべきことを行っていますが、何らかの理由でそれを機能させることができません。

構造体は次のとおりです。

//--------------------------------------------

整数値を整数引数に単純に配置すると、スタックオーバーフローまたは内部フィールドへのその他のアクセスが表示され、charポインターはstrdupによって割り当てられます(使用できる唯一のメモリ割り当て)。

また、どのような種類のメモリ割り当ても使用できないことに注意してください。

2 つ目は、構造体の静的配列を設定するように指示されたことです。何かのようなもの

しかし、各ブランチで同じことを行うにはどうすればよいですか?

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

objective-c - Objective-C 静的インライン NSString 配列

こんにちは:) NSStringの静的C配列を作成しようとしています。

これは私が試したものです:

コンパイラ エラーはありませんが、41 個の警告が表示されます。これらはすべて、次の 3 つのいずれかです。

このクラスを使用すると、大量の sigbart やその他のメモリ アクセス エラーが表示されると思います...

NSStrings の静的配列を初期化する適切な方法は何ですか (できればインラインで、NSArrays ではなく C-arrays を使用したい)?

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

java - ハードコードされた値を使用してカスタムデータ型の静的配列を宣言するにはどうすればよいですか?

ゴール:

頻繁に変更されないデータのハードコードされたルックアップテーブルを実装したいのですが、変更された場合は、プログラムをすばやく更新して再構築できるようにしたいと思います。

プラン:

私の計画は、そのようなカスタムデータ型を定義することでした...

次に、メインクラスで、配列を次のようにハードコーディングします...

ただし、これは構築されません。「」というメッセージが表示され続けますType mismatch: cannot convert from float[] to ScalingData

どうすれば目標を達成できますか?

アップデート

これまでに提案を実装しようとしましたが、それでもエラーが発生します...

コードは次のようになります。

ハードコードされた配列のエラーは

編集...以下の回答に従って完全なソリューション

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

c++ - 静的配列クラス変数「複数定義」C++

静的 int 配列であるクラス変数が必要なコードを書いています。ヘッダーファイルで次のようなものを使用してこれを実行できることを理解しています。ああ:

このヘッダーを他の 1 つのファイル (次の main.cpp のようなもの) にのみ含める場合、これは問題なく機能します。

しかし、クラス A をもう少し複雑にする必要があり、A.cpp ファイルも必要だとします。main.cpp ファイルは同じままにしますが、Ah を次のように変更します (関数 printA を追加しただけです)。

そして、ファイル A.cpp で:

gcc -o Ao -c A.cpp で Ao をコンパイルしても問題ありません。しかし、main.cpp (gcc -o atest main.cpp Ao) をコンパイルするときにこれをリンクすると、「'A::a' の複数定義」で失敗します。

私は解決策を求めてインターネットを精査してきましたが、ヘッダーで宣言された変数を複数の場所に含めると「複数定義」エラーが発生する人を見つけました。解決策は、変数 extern をヘッダーを定義し、それを 1 つのソース (非ヘッダー) ソース ファイルでのみ定義します。しかし、クラス変数を static と extern の両方で宣言することはできませんよね? 試してみるか、単に extern を宣言すると、変数が静的ではないという警告が表示されます (両方を試すと、「競合する指定子」エラーも発生します)。

それで、私の質問: ヘッダー ファイルを複数のソース ファイルに含める必要がある場合、静的配列クラス変数を使用することは可能ですか? もしそうなら、どのように?

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

c++ - サイズがパラメータで指定されるchar配列の作成-C++

静的char配列を持つクラスがあります。配列のサイズはで与えられますargv

私はこのようなことをしたい:

しかし、これはうまくいかないようです。次のようなエラーが発生します:

エラー2エラーLNK2001:未解決の外部シンボル "public:static char * ABC :: buffer"(?buffer @ ABC @@ 2PADA)gpslib.lib

どうすればこれを修正できますか?

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

php - データベースで新しいテーブルの代わりに静的配列を使用する必要があるのはいつですか?

2 つの静的配列 (役割とリソース用) を使用してアクセス制御リストを実装しましたが、権限用にデータベースに新しいテーブルを追加しました。

ロールに静的配列を使用するという考え方は、常に新しいロールを作成するわけではないため、データが常に変更されるわけではありません。リソースについても同じことを考えました。リソースは、データよりもコードに関連しているため、開発者だけが扱うべきものだと思うからです。データベーステーブルの代わりに静的配列を使用する理由について何か知っていますか? いつ/なぜ?