1. Original Version:
PlusStringHandle( x, Main(= , plusString( x, x +
2. Original anonymous function version: remove the "plusString" method and change it
PlusStringHandle pHandle = PlusStringHandle(( x, x +, ));
3. Use Lambda (C #3.0 +) and remove the "plusString" method (this method is not required for the following code)
PlusStringHandle pHandle = ( x, y) => x +, ));
There are even more ways to write (saving parameter types)
PlusStringHandle pHandle = (x, y) => x +, ));
If there is only one parameter
WriteStringHandle( Main( WriteStringHandle handle = p =>
1. For the original declaration method, see Demo2. directly use the generic delegate Func AND Action defined by. NET Framework to save the delegate declaration every time.
Main(<>(p => Console.WriteLine(, p), WritePrint<T>(Action<T>
3. Add an extension method to implement the so-called "chain programming.
Main( str = .plusString(p => p = p + ).plusString(p => p + plusString<TParam>( TParam source, Func<TParam, >