問題タブ [generics]

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 投票する
3 に答える
4412 参照

c# - ArrayList の要素の型を指定する

.net 3.0 には、配列リストに型を与えてオブジェクトを返すだけでなく、そうするのに問題があると思っていました。出来ますか?もしそうなら、どのように?

0 投票する
3 に答える
18929 参照

c# - .NETジェネリックにおけるオーバーロードされた演算子制約の解決策

減算演算子などの演算子をオーバーロードした型のみを受け入れるジェネリックメソッドが必要な場合はどうすればよいですか。インターフェイスを制約として使用しようとしましたが、インターフェイスで演算子のオーバーロードを設定できません。

これを達成するための最良の方法は何ですか?

0 投票する
10 に答える
464 参照

c# - あるリストを別のリストで更新するために必要なコードの最小量は?

リストが 1 つあるとします。

そして別のリスト...

次のように originalList を更新するにはどうすればよいですか。

  1. int が newList に表示される場合は、保持します
  2. int が newList に表示されない場合は、削除します
  3. newList からの ints を originalList に追加しますが、まだそこにはありません

したがって、originalList の内容を作成します。

私が尋ねている理由は、子のコレクションを持つオブジェクトがあるからです。ユーザーがこのコレクションを更新するとき、すべての子を削除してから選択を挿入するのではなく、コレクション全体を破棄して挿入するのではなく、追加または削除された子に対処した方が効率的だと思います。 newList の子は、それらがすべて新しいものであるかのように表示されます。

編集 - 申し訳ありませんが、ひどいタイトルを書きました...「効率的」ではなく「コードの最小量」と書くべきでした。それは私が得た多くの答えを捨てたと思います。それらはすべて素晴らしいです...ありがとう!

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

.net - VB.NET ジェネリック メソッドに渡された型に基づいて条件付きロジックを実行する方法

クラスのインスタンスを作成する VB.NET ジェネリック ファクトリ メソッドを作成したいと考えています (コントロール コンテナーの独自の反転として)。インターフェイス IDoSomething をジェネリック パラメーターとして渡す場合、(IDoSomething を実装する) DoSomething のインスタンスを返す必要があります。if文の構文がわかりません。私は次のようなものを書きたい:

しかし、このコードはコンパイルされません。

0 投票する
4 に答える
537 参照

c# - ジェネリック引数を持つ型を制約として使用するにはどうすればよいですか?

ジェネリック引数を持つ別の型の制約を指定したいと思います。

しかし、これはまだ c# で行うことはできません (そして、そうなることはないと思います)。キーフレーム引数のタイプを指定するのではなく、これに対するエレガントな解決策はありますか?:

0 投票する
4 に答える
828 参照

generics - IEnumerable<>よりもIEnumerableを使用する場合

.NET Frameworkには一般的な差異がないため、メソッドが複数の型を処理するように設計されている場合、System.Collectionインターフェイスの非一般的なバージョンを処理するメソッドを使用する方が「正しい」でしょうか。

理想的には、.NET 3.5に移行すると、これらのメソッドを拡張メソッドに変更するようにコードが変更されます。

0 投票する
4 に答える
1901 参照

java - 拡張クラスを特定するジェネリック型引数?

特定のサブクラスをパラメーターとして指定するインターフェースを実装するクラスが必要です。

しかし、単に task または の代わりに、使用される type-arg が、これを拡張する特定のクラスのものであることを保証したいと思います。

だから私が思いついた最高のものは次のとおりです。

次のように記述して拡張します。

しかし、これも有効です:

また、コールバックの呼び出しは ClassCastException で失敗します。それで、このアプローチは間違っていて壊れているのでしょうか、それとも私が見逃した正しい方法はありますか?

0 投票する
3 に答える
22851 参照

c# - C# - インライン メソッド Func を定義する方法パラメータとして?

これらの厄介な null チェックをすべて処理し、存在しない場合はデフォルト値を挿入する単純な SessionItem 管理クラスを作成しました。ここに私の GetItem メソッドがあります:

では、Func<T> をインライン メソッド パラメーターとして渡して、これを実際にどのように使用すればよいでしょうか。

0 投票する
4 に答える
246 参照

c# - ジェネリック メソッド呼び出し

上記のコード行を機能させるには、何を変更する必要がありますか。カウントを取得するために、リストまたは配列のいずれかを渡そうとしています。

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

generics - サービス対象コンポーネントでの汎用リストの使用

クラスのプロパティとして汎用リストを使用しようとしていますServicedComponent...

MyListコードはエラーなしでコンパイルされますが、別のクラスの com オブジェクトでプロパティを使用しようとすると、リストに値が追加されません。Googleは、コンポーネントでジェネリックを使用できないと「言った」が、その理由と問題の適切な解決策をまだ見つけていない.

誰かが私を助けることができますか?