Avoiding Custom Delegates
I've been using the Func<...> and Action<...> delegates for a while now but I recently declared a custom delegate where I could have used Action<...>. Brad Abram's post Framework Design Guidelines: Avoiding custom delegates prompted me to change my code.
For reference here are the different versions of Action and Func:
public delegate void Action() public delegate void Action<T1>(T1 arg1) public delegate void Action<T1, T2>(T1 arg1, T2 arg2) public delegate void Action<T1, T2, T3>(T1 arg1, T2 arg2, T3 arg3) public delegate void Action<T1, T2, T3, T4>(T1 arg1, T2 arg2, T3 arg3, T4 arg4) public delegate TResult Func<TResult>() public delegate TResult Func<T, TResult>(T arg) public delegate TResult Func<T1, T2, TResult>(T1 arg1, T2 arg2) public delegate TResult Func<T1, T2, T3, TResult>(T1 arg1, T2 arg2, T3 arg3) public delegate TResult Func<T1, T2, T3, T4, TResult>(T1 arg1, T2 arg2, T3 arg3, T4 arg4)
Posted by
Charles Cook
at 01:49 PM.
Permalink.
Copyright © Charles Cook.