問題タブ [delegates]

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

.net - このエラーを修正するにはどうすればよいですか: "MyEvent += expected"?

デリゲートがあり、次のように言います。

イベントがあり、次のように言います。

イベントの呼び出し中に、次のエラー メッセージが表示されます。

「MyEvent += 予想 .....」

これを解決するにはどうすればよいですか?

0 投票する
6 に答える
72869 参照

c# - デリゲート キーワードとラムダ表記

コンパイルしたら、次の違いがありますか。

?

0 投票する
14 に答える
12410 参照

.net - デリゲートを使用する利点は?

Observer パターンを VB.NET や C#、その他の一流の .NET 言語で実装しようと考えています。これにはデリゲートを使用できると聞いたことがありますが、オブザーバーに実装されたプレーンな古いインターフェイスよりもデリゲートが好まれる理由がわかりません。そう、

  • 独自のインターフェイスを定義し、それらを実装するオブジェクトへの参照を渡す代わりに、デリゲートを使用する必要があるのはなぜですか?
  • デリゲートの使用を避けて、古き良き時代のインターフェイスを使用する必要があるのはなぜですか?
0 投票する
4 に答える
5929 参照

.net - デリゲートを使用すると、.NET プログラムの速度が低下しますか?

デリゲートを使用するとプログラムが遅くなりますか?

それらが私のプログラムを遅くするかどうか本当にわからないので、私はそれらを避けてきました。かなりの CPU パワーを使用する (キャッチ) 例外が発生するかどうかはわかっていますが、デリゲートとイベント、および .NET がそれらに対して行うことについてはわかりません。

0 投票する
8 に答える
960 参照

c# - C# デリゲート - どのくらいの頻度で、いつ使用しますか?

デリゲートは非常に強力な言語機能のように見えますが、私はまだそれらを怒って使用する機会を見つけていません (私が言わなければならない DAL を除いて)。

それらをどのくらいの頻度で使用しますか? また、どのような状況で最も役立つと思いますか?

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

design-patterns - クロージャー/デリゲート/関数ポインターを使用してプログラミング言語でテンプレート メソッド パターンを使用しますか?

私は過去 8 年間、C# と Java の間を行ったり来たりしてきました。

私が驚くべきことの 1 つは、C# での "テンプレート メソッド" デザイン パターンの使用を完全にやめたことです。実際、C# では、このパターンをアンチパターンと考えるようになりました。

http://en.wikipedia.org/wiki/Template_method_pattern

Java に戻ると、このパターンは生きていて素晴らしいものであることがわかります。まだアンティークに見えると思いますが、Java でこれを行う方法は他にないことに気付きました。Javaもアンティークに見えます;)

これはとにかく出てくるので、なぜそれはアンチパターンなのですか?

  • 多くの場合、「間違った理由」で継承階層を使い果たします。
  • 基本クラスには、あらゆる種類の無関係なコードが散らばる傾向があります。
  • 多くの場合、開発プロセスのかなり早い段階で、設計をロックダウンする必要があります。(多くの場合、時期尚早のロックダウン)
  • 後の段階でこれを変更すると、ますます難しくなります。

したがって、クロージャー/デリゲート/関数ポインターを使用すると、通常、サブクラス化する代わりに関数を渡します。

質問に戻ります。

あなたの言語にクロージャー/デリゲート/関数がある場合、テンプレート メソッドを使用しますか? また、いつ使用しますか?

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

c# - デリゲートを配置する場所。.

アプリケーションの最適なディレクトリ構造を決定しようとしています

私は持っている:

UI
データ
インターフェイス

しかし、デリゲートをどこに置くべきかわかりません..

別の Delegates フォルダーが必要か、または使用されているのと同じクラスにデリゲートを格納する必要があります。.

0 投票する
6 に答える
11061 参照

delegates - Func <>デリゲートの何がそんなに素晴らしいのですか?

これが基本的なものである場合は申し訳ありませんが、私は.Net3.5でピックアップしようとしていました。

質問:Func <>について何か素晴らしいことはありますか?それは5つのオーバーロードですか?その見た目から、正確に5つのオーバーロードとそれ以上のオーバーロードを使用して、MyFunc<>という同様のデルゲートを自分で作成できます。

例:public delegate TResult MyFunc<TResult>()およびさまざまなオーバーロードの組み合わせ..

Func <>の代表者を理解しようとして、次のシナリオを思いついたときに、この考えが浮かびました。

これは、int型の1つのパラメーターとint型の戻り型を持つデリゲートを意味します。5つのバリエーションがあります(インテリセンスによるオーバーロードを見る場合)。だから私は、リターンタイプのないデリゲートを持つことができると推測していますか?

では、Func <>は素晴らしいものではなく、.Net Frameworkの単なる例であり、必要に応じて、独自のニーズに合わせてカスタムの「func <>」デリゲートを作成できると言っても過言ではありませんか?

ありがとう、

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

cocoa - NSApplication デリゲートと設定ペイン

システム環境設定ペイン内から NSApp デリゲートを制御できないようですが、これは理解できます。プログラムがアクティブになったときにオブジェクトに通知する他の方法はありますか?

0 投票する
8 に答える
53201 参照

c# - 空の C# イベント ハンドラーを自動的に作成する

ハンドラーがアタッチされていない C# でイベントを発生させることはできません。そのため、各呼び出しの前に、イベントが null かどうかを確認する必要があります。

コードをできるだけクリーンに保ち、これらの null チェックを取り除きたいと考えています。少なくとも私の場合は、パフォーマンスに大きな影響を与えるとは思いません。

現在、空のインラインハンドラーを各イベントに手動で追加することでこれを解決しています。私はそれを行うことを覚えておく必要があるため、これはエラーが発生しやすいです。

リフレクションといくつかの CLR マジックを使用して、特定のクラスのすべてのイベントに対して空のハンドラーを自動的に生成する方法はありますか?