Il reso del delegato Action<T>
non valido. C'è un altro delegato incorporato che restituisce un valore non vuoto?Come descrivere un delegato di Azione <T> che restituisce un valore (non vuoto)?
38
A
risposta
60
Sì. Func<>
restituisce il tipo specificato come parametro di tipo generico finale, in modo che Func<int>
restituisca un int
e Func<int, string>
accetta un numero intero e restituisce una stringa. Esempi:
Func<int> getOne =() => 1;
Func<int, string> convertIntToString = i => i.ToString();
Action<string> printToScreen = s => Console.WriteLine(s);
// use them
printToScreen(convertIntToString(getOne()));
16
Certo, i delegati Func ritorno T.
Func<TResult> is "TResult method()"
Func<TInput, TResult> is "TResult method(TInput param)"
Per tutto il tragitto verso il basso per
Func<T1, T2, T3, T4, TResult>
http://msdn.microsoft.com/en-us/library/bb534960.aspx
http://msdn.microsoft.com/en-us/library/bb534303.aspx
Inoltre, per ragioni di completezza, ci è Predicato che restituisce bool.
Predicate<T> is "bool method(T param)"
Problemi correlati
- 1. Come si dichiara un Delegato Func che restituisce un Delegato Func dello stesso tipo?
- 2. Un delegato vuoto mangerà memoria?
- 3. unità di prova di un metodo che restituisce un vuoto
- 4. restituisce un vettore vuoto C++
- 5. Restituisce un IEnumerator vuoto
- 6. Verificare se un determinato tipo è un delegato di azione
- 7. Come `({...})` restituisce un valore?
- 8. Come utilizzare Task.Run (Azione <T>)
- 9. MySQL Sottostringa restituisce valore vuoto
- 10. C#: Azione delegato vs delegato esplicito
- 11. NodeJS Crypto con RC4 restituisce un valore vuoto
- 12. È necessario che un messaggio delegato sia sempre vuoto come tipo di reso?
- 13. Cosa restituisce un IQueryable vuoto come quando vuoto?
- 14. Perché play.libs.Json.toJson restituisce un oggetto vuoto?
- 15. Come utilizzare l'espressione del generatore CMake $ <TARGET_FILE: tgt>?
- 16. PowerShell non restituisce un array vuoto come una matrice
- 17. Perché un gestore eventi delegato vuoto causa un avviso CA1061?
- 18. : quale denominazione di un metodo che restituisce un valore booleano?
- 19. Azione uguale a Func <TResult>?
- 20. In che modo System.Void si specifica un tipo di valore di ritorno per un metodo che non restituisce un valore?
- 21. Come si restituisce un valore predefinito se un LINQ to entità query non restituisce alcun valore
- 22. Come creare un delegato vuoto usando le Expression Trees?
- 23. Che cos'è un delegato C++?
- 24. getHours() restituisce un valore errato
- 25. funzione anonima non restituisce sempre un valore
- 26. Meteor.methods restituisce un valore non definito
- 27. Perché operator ++ restituisce un valore non const?
- 28. Come reimpostare NSMutableString con un valore vuoto?
- 29. Esiste un delegato che non è un MulticastDelegate in C#?
- 30. azione delegato con zero Parametro
Inoltre, in .NET 4, 'Func <>' può essere 'Func' Il limite precedente era T4. –
Inoltre, per * complete * completezza, non dimenticare ['Converter (TInput, TOutput)'] (http://msdn.microsoft.com/en-us/library/kt456a2y2y.aspx) e ['Confronto (T) '] (http://msdn.microsoft.com/en-us/library/tfakywbh.aspx) (entrambi ovviamente in grado di precedere' Func 'e' Func ', che li rende obsoleti). In realtà, ci sono probabilmente più di questo ... –
@Dan molto vero, anche se sono molto specifici a causa della loro denominazione (che è tutto ciò che c'è davvero da fare). Ho usato Converter una volta: http://www.stum.de/2009/12/23/using-a-converter-to-convert-from-a-model-to-a-business-class/ –