Пример #1
0
        internal static void run()
        {
            AnonMethods.GetTextDelegate getTextDelegate = delegate(string name)
            {
                return("Hello, " + name);
            };

            // Lambda expression (expression lambda)
            AnonMethods.GetTextDelegate getHelloText = (string name) => { return("Hello, " + name); };

            // Statement lambda
            AnonMethods.GetTextDelegate getGoodbyeText = (string name) =>
            {
                Console.WriteLine("I'm inside of a statement lambda.");
                return("Goodbye, " + name);
            };

            // Condensed expression lambda. Parameter name types are inferred from delegate type.
            // Parameter list paranthenses () can be omitted if there is only one parameter.
            AnonMethods.GetTextDelegate getWelcomeText = name => "Welcome, " + name; // Expression is 1 line, statement is multiple expressions.

            Delegates.PerformCalculation getSum     = (a, b) => a + b;
            Delegates.PerformCalculation getProduct = (a, b) => a * b;

            DisplayNum(getSum);
            DisplayNum(getProduct);

            Console.WriteLine(getWelcomeText("Rayleigh"));

            return;
        }
Пример #2
0
 static void DisplayNum(Delegates.PerformCalculation getResult)
 {
     Console.WriteLine(getResult(3.5, 2.5));
 }