(2)有返回值的委托
delegate int Mydel();//声明有返回值得方法
完整的代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Delegate2
{
delegate int Mydel();//声明有返回值得方法
class MyClass
{
int IntValue = 5;
public int Add2() { IntValue += 2; return IntValue; }
public int Add3() { IntValue += 3; return IntValue; }
}
class Program
{
static void Main(string[] args)
{
MyClass myTest = new MyClass();
Mydel mDel = myTest.Add2;//创建并初始化委托
mDel += myTest.Add3; //增加方法
mDel += myTest.Add2; //增加方法
Console.WriteLine("Value is {0}", mDel()); //调用委托并使用返回值
Console.ReadLine();
}
}
}
输出结果是:
Value is 12