首页 新闻 搜索 专区 学院

如果在循环中改变几个方法的执行顺序

0
悬赏园豆:10 [已解决问题] 解决于 2012-02-25 19:24
    Public Sub AA()
Do
'循环开始
'第一次:
'a1->b1->c1->d1

'第二次:
'b1->a1->c1->d1

'第三次:
'c1->a1->b1->d1

'第四次:
'd1->a1->b1->c1

'第五次:
'a1->b1->c1->d1

'按这样的顺序执行下去
'这些方法,就是传入一个数(表示需要处理几个),处理一下后,返回一个数(表示还有几个未处理)
'而且我只是为了举例子定义了4个方法,其实实际的方法数目是要变的,但传入的参数和返回值的类型是不变的
Loop


End Sub

Public Function a1(n As Int32) As Int32
Return n
End Function

Public Function b1(n As Int32) As Int32
Return n
End Function


Public Function c1(n As Int32) As Int32
Return n
End Function

Public Function d1(n As Int32) As Int32
Return n
End Function

问题我写成伪代码了,希望大家能看懂,帮帮忙

c#
豆腐欣欣的主页 豆腐欣欣 | 初学一级 | 园豆:76
提问于:2012-02-13 17:32
< >
分享
最佳答案
1

使用泛型委托Func

int a1(int n)

{

}

int b1(int n)

{

}

int c1(int n)

{

}

int d1(int n)

{

}

Func<intint> fa = a1;

Func<intint> fb = b1;

Func<intint> fc = c1;

Func<intint> fd = d1;

 

把fa、 fb 、 fc 、 fd 放入集合

 

调用

int result=fa(10);




 

收获园豆:5
GuYoung | 菜鸟二级 |园豆:433 | 2012-02-14 08:16
其他回答(1)
0

多路委托就可以吧

收获园豆:5
为森 | 园豆:379 (菜鸟二级) | 2012-02-14 00:59
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册