我想实现Bubble排序的委托解决方案。我有这样的代码:通用代理和IList <T>
public delegate void SortHandler<T>(IList<T> t);
public static void Sort<T>(IList<T> arr, SortHandler<T> func)
{
func(arr);
}
int[] arr2 = { 10,1,2,3,4 };
CollectionHelper.Sort<int>(arr2, bubble_sort);
冒泡排序的函数签名是:
static void bubble_sort(int[] array) {}
我得到这个错误:
参数 '2':无法从 '方法组' 转换为“DelegatesAndGenerics。 SortHandler
不是int []实现通用接口IList? –
2010-06-25 18:10:18
这将有完全相同的问题。 'int []'*确实实现了'IList',但是你仍然不能使用一个*只接受一个'int []'的方法来代表任何*'IList ' 。 –
2010-06-25 18:11:02
当你的权利,你的权利。教我不注意。我可以投票自己吗? – ckramer 2010-06-25 21:03:23