C#中方法可以怎样才能作为参数进行传递,传递的简单示例代码
3个回答
展开全部
可以用委托来实现,简单代码:
delegate int NumOpe(int a,int b); //第一步:委托声明
class Class1
{
static void Main(string[] args)
{
Class1 c1 = new Class1();
NumOpe p1 = new NumOpe(c1.Add); //委托实例化,注意参数是要使用的参数名,且不带括号
NumOpe p2 = new NumOpe(c1.Sub);
Console.WriteLine(p1(1,2)); //委托调用
Console.WriteLine(p2(1,2)); //委托调用
Console.ReadLine();
}
private int Add(int num1,int num2)
{
return(num1+num2);
}
private int Sub(int num1,int num2)
{
return(num1-num2);
}
}
更复杂的应用可以去查一些资料
delegate int NumOpe(int a,int b); //第一步:委托声明
class Class1
{
static void Main(string[] args)
{
Class1 c1 = new Class1();
NumOpe p1 = new NumOpe(c1.Add); //委托实例化,注意参数是要使用的参数名,且不带括号
NumOpe p2 = new NumOpe(c1.Sub);
Console.WriteLine(p1(1,2)); //委托调用
Console.WriteLine(p2(1,2)); //委托调用
Console.ReadLine();
}
private int Add(int num1,int num2)
{
return(num1+num2);
}
private int Sub(int num1,int num2)
{
return(num1-num2);
}
}
更复杂的应用可以去查一些资料
展开全部
用委托
比如函数
private String lalala(Int str)
{
return str.ToString();
}
先声明一个委托
Delegate String Dele(Int str);
参数和返回类型一定要和想传递的函数一样。
然后创建一个实例
Dele de = new Dele(lalala);
然后de就是lalala的引用了。
比如函数
private String lalala(Int str)
{
return str.ToString();
}
先声明一个委托
Delegate String Dele(Int str);
参数和返回类型一定要和想传递的函数一样。
然后创建一个实例
Dele de = new Dele(lalala);
然后de就是lalala的引用了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一般是在委托里面把方法作为参数进行传递。示例你自己随便去搜一下委托就有了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询