delegate¿¡¼ ¹«¸í ¸Þ¼µå ´Ù½Ã ¶÷´Ù½Ä ( Lambda Expression )À¸·Î Äڵ带 ´õ °£°áÇÏ°Ô Ç¥Çö ÇÒ¼ö ÀÖ´Ù.
¶÷´Ù½ÄÀ» »ç¿ëÇÏ´Â ÀÌÀ¯´Â ´ÙÀ½°ú °°´Ù.
- ÀÍ¸í ¸Þ¼Òµå¸¦ ¸¸µå´Â °æ¿ì
- Func¿Í ActionÀ¸·Î ´õ °£ÆíÇÏ°Ô ¹«¸í ÇÔ¼ö ¸¸µå´Â °æ¿ì
- LINQ¸¦ ÀÌ¿ëÇÑ ¹æ¹ýÀ¸·Î Ç¥ÇöÇÏ´Â °æ¿ì
¶÷´Ù½ÄÀÇ ±âº» Çü½ÄÀº 2°¡Áö°¡ ÀÖ´Ù.
1. (¸Å°³º¯¼ö) => { ÇÔ¼ö º»¹®; }
(a, b) => { return (a + b); }
2. (¸Å°³º¯¼ö) => ¹Ýȯ½Ä;
(a, b) => (a + b)
»ç¿ë ¿¹)
public void Run(int a, int b, CalcDelegate dele)
{
Console.WriteLine(dele(a, b));
}
public int Plus(int a, int b) { return a + b; }
public int Minus(int a, int b) { return a - b; }
public void Test()
{
//Run(10, 20, Plus);
//Run(10, 20, delegate(int a, int b) { return (a + b); });
//Run(10, 20, (a, b) => { return (a + b); });
Run(10, 20, (a, b) => (a + b));
//Run(10, 20, Minus);
//Run(10, 20, delegate(int a, int b) { return (a - b); });
//Run(10, 20, (a, b) => { return (a - b); });
Run(10, 20, (a, b) => (a -b));
}
|
ÂüÁ¶)
http://tapito.tistory.com/46
http://it-jerryfamily.tistory.com/103
|