class Program
{
private delegate void mydelegate(int a);//定义一个没有返回值带参数的委托类型
delegate string mydelegate1();//定义一个有返回值类型的委托;
delegate void mydelegate(int a);
delegate string mydelegate1();
static void Main(string[] args)
{
int a = 10; 定义一个int类型赋值为10;
mydelegate my = new mydelegate(Test1);//实例化对象 委托实例化 一个实例化delegate类型(传递相应的方法)
// mydelegate my = Test1;//直接使用类型 指向test的方法
my(a);
int a2 = 20;
a2.ToString();
mydelegate1 m1 = new mydelegate1(a2.ToString);
Console.WriteLine("{0}",m1);
Program p = new Program();
Console.WriteLine(p);
//Console.WriteLine("Hello World!");
Action t = Test;//内置委托的类型 Action 是没有返回值
t();
Action<int> t2 = Test1;//带参使用
t2(10);
Func<int> t5 = Test5;
t5();
Func<int,int > t6=Test6;
t6(10);
Func<int,int,double> t7=Test7;//参数1:穿入参数类型 参数2: 传入参数类型 参数3:方法返回值类型
t7(10,20);
//练习
mydelegate my = new mydelegate(Test111);//上面已经定义带参数的委托类型 参数传入的是带参数的方法 注意方法返回值类型
my(88);//委托后 调用方法; 传入参数;
mydelegate1 my1 = new mydelegate1(Test222);
my1();
Action t11 = Test11;//不带参数
//t11();
Action<string> t22 = Test22;//带参数
// t22("123");
Func<string> t33 = Test33;
// t33();
Func<string, string> t44 = Test44;
// t44("888");
Console.ReadKey();
}
public override string ToString()//重写
{
return base.ToString();
}
static void Test()
{
Console.WriteLine("{Test");
}
static void Test1(int a)
{
Console.WriteLine("{0}", a);
}
static int Test5()
{
Console.WriteLine("没有参数,但有返回值类型");
return 10;
}
static int Test6(int a)
{
Console.WriteLine("{0}", a);
return a;
}
static double Test7(int a, int b)
{
Console.WriteLine("{0}+{1}={2}", a, b, a + b);
return a;
}
static void Test11()
{
Console.WriteLine("没有参数的委托");
}
static void Test22(string str)
{
Console.WriteLine("有参数的没有返回值类型的委托:{0}", str);
}
static string Test33()
{
Console.WriteLine("没有带参有返回值类型的fun ");
return "123!";
}
static string Test44(string str2)
{
Console.WriteLine("有返回值类型的带参数的委托:{0}", str2);
return "888";
}
public static void Test111(int a)
{
Console.WriteLine("{0}", a);
}
public static string Test222()
{
Console.WriteLine("有返回值类型的带参数的委托方法{");
return "1";
}
}
unity游戏开发-C#语言基础篇(委托)
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- ···class Program{static void Main(string[] args){Rectange...