Func and Action C# with Example



Func and Action C# with Example

Func provides a holder for parameterised anonymous functions. The leading types are the inputs and the last type 
is always the return value. 
// square a number. 
Func square = (x) => { return x * x; }; 
// get the square root. 
// note how the signature matches the built in method. 
Func squareroot = Math.Sqrt; 
// provide your workings. 
Func workings = (x, y) => 
string.Format("The square of {0} is {1}.", x, square(y)) 
Action objects are like void methods so they only have an input type. No result is placed on the evaluation stack. 
// right-angled triangle. 
class Triangle 
{ 
public double a; 
public double b; 
public double h; 
} 
// Pythagorean theorem. 
Action pythagoras = (x) => 
x.h = squareroot(square(x.a) + square(x.b)); 
Triangle t = new Triangle { a = 3, b = 4 }; 
pythagoras(t); 
Console.WriteLine(t.h); // 5. 

0 Comment's

Comment Form

Submit Comment