Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 29284|Risposta: 1

[Fonte] Introduzione ai delegati C# (delegato, Azione, Func, predicato)

[Copiato link]
Pubblicato su 09/04/2018 14:57:15 | | |

Un delegato è una classe che definisce il tipo di metodo in modo che possa essere passato come argomento a un altro metodo. Un evento è una commissione speciale.

1. Dichiarazione di incarico

(1). delegare

        delegato

   Il delegato ha almeno 0 parametri e un massimo di 32 parametri, e non può avere valore di ritorno né specificare un tipo di valore di ritorno.

   Ad esempio, delegato pubblico int MetodoDelegato(int x, int y); Indica che ci sono due parametri e restituisce un tipo int.

(2). Azione

       Action è un delegato generico senza valore di ritorno.

L'azione rappresenta un delegato senza parametri e senza valore di ritorno

Action<int,string> indica un delegato con un parametro in ingresso int e senza valore di ritorno per la stringa

  Action<int, string, bool> indica un delegato con parametri in entrata int, string, bool senza valori di ritorno

       Action<int, int, int, int> significa che sono passati 4 parametri di tipo int e non c'è un valore di ritorno

L'azione ha almeno 0 parametri e un massimo di 16 parametri, senza valore di ritorno.

Esempio:



(3). Funzione

Func è un delegato generico con un valore di ritorno

Func<int> significa un delegato senza parametri e restituisce un valore int

Func<object,string,int> rappresenta un delegato con il parametro in ingresso come oggetto e la stringa restituisce un valore int

Func<object,string,int> rappresenta un delegato con il parametro in ingresso come oggetto e la stringa restituisce un valore int

Func<T1,T2,,T3,int> rappresenta un delegato con i parametri in ingresso T1, T2, ,T3 (generico) che restituisce un valore int

Func ha almeno 0 parametri e un massimo di 16 parametri, che vengono restituiti secondo il valore di ritorno generico. Deve esserci un valore di ritorno, non nullo


Esempio:




(4) .predicato

Il predicato è un delegato generico che restituisce un tipo bool

il<int> predicato rappresenta un delegato con il parametro in ingresso int che restituisce bool

Il predicato ha e un solo parametro, e il valore di ritorno è fissato a bool

Esempio:







Precedente:Persistenza dei messaggi della coda rabbitMQ [con codice sorgente]
Prossimo:Riepilogo delle informazioni su ActiveMQ e RabbitMQ
Pubblicato su 17/12/2019 19:42:23 |
Ho una domanda. Ho scritto troppo js e mi sono abituato alle funzioni di callback.

Poi Func veniva usato come parametro. E questa funzione voglio eseguirla asincronamente. Se trovi qualche risposta, puoi mettere Func in Task.Run
Cambiò rapidamente l'ID del thread.

E ho usato in modo divertente Func<string,Task<string>> così da poter aspettare direttamente la funzione, ma ho scoperto che in realtà non cambiava l'id del thread.
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com