Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 18347|Odpověď: 0

[Komunikace] Delegát v C#

[Kopírovat odkaz]
Zveřejněno 07.02.2019 21:08:45 | | |
1. Co je to svěřování?

Delegát je referenční typ, což je spravovaná verze ukazatele funkce. V C# jsou delegáti typ, který ukládá reference jako funkce. Delegáti mohou odkazovat jak na instance, tak na statické metody, zatímco ukazatele funkcí mohou odkazovat pouze na statické metody. Deklarace delegáta je velmi podobná funkci, na rozdíl od funkce v tom, že delegát nemá tělo funkce a vyžaduje klíčové slovo Delegát. Delegovaná deklarace specifikuje podpis funkce, který obsahuje seznam parametrů a typ návratu. Jakmile je delegát definován, lze deklarovat proměnnou typu delegáta, kterou lze inicializovat jako referencovanou funkcí se stejným podpisem jako delegát, a kterou lze volat pomocí proměnné delegát. (ps: Ve skutečnosti mu svěřil třídu a jeho účelem bylo předat metodu jako parametr ostatním metodám!) )

Delegáti, i když jsou velmi podobní ukazatelům funkcí, nejsou ukazateli. Mnoho lidí uvádí . Delegát v .NET je chápán jako bezpečný ukazatel funkce, což je nepravděpodobné, a ukazatel funkce implementace delegáta je velmi podobný tím, že poskytuje mechanismus zpětného volání programu.

2. Čtyři kroky svěření: 1. Vyhlásit typ svěření

  2. Existuje metoda, která obsahuje kód, který má být vykonán

  3. Vytvořte delegovanou instanci

  4. Zavolejte instanci delegáta

3. Příklady:






Předchozí:[DllImport("user32.dll")] a externí použití v C#
Další:Čistá implementace hooku v C#
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com