2012-04-30 56 views
1

我要声明一个参数化方法阵列或方法列表。这意味着将有一个方法数组,我可以通过使用数组的索引来调用该方法,同时我想给方法一个参数。我怎样才能做到这一点?C#参数化方法Array或参数化方法列表

+2

你应该嘲笑了伪代码来显示你正在尝试做什么,即使它不会编译。同时显示你会怎样称呼这种方法。 – Yuck

+0

使用代表或开关盒。正如Yuck所说,很难说不知道你想做什么。 – superM

+1

是否所有的方法都具有相同的签名 - 即参数和返回值? –

回答

4

如果知道方法签名,你可以做这样的事情:

使用需要在int并返回一个方法的一个例子的string

var functionList = new List<Func<int, string>>(); 

functionlist.Add(SomeMethod) 


functionlist[0](12345); //call the function 


//Assuming you had this: 
public string SomeMethod(int val) { ... 
+0

什么是“var”?编译器不会编译代码的第1行。我想你必须宣布全球? – sanchop22

+1

您使用的是哪个版本的C#?变种是新的,因为净的3.0 尝试: 列表> functionList =新列表>(); –

+0

我可以在我声明函数列表的行上显示方法吗?像:名单> functionList =新名单>()= {M1,M2,M3,...} – sanchop22