遗憾的是,Generic Dictionary和其他特殊泛型集合没有提供类似的方法。而且,倘若不支持匿名方法,那么此类新方法的意义立马就降低了,因为要对每次使用单独写一个函数,而且只是为了在这个有限的上下文中使用一次。为了实现各自的功能写一堆小函数在类里面着实丑陋。(而目前,VS中只有C#支持匿名方法)
哈哈 总算有让你这个VB fans郁闷的时候了 ^_^
哼,我有VBF
list2 = list1.FindAll(Which.Is >= 50 And Not Which.Is = 60)
你设想的AssertThat我也可以用VBF完美实现出来
c.AssertThat(a, 10, Greater(Of Integer))
c.AssertThat(m, Not EqualTo(27) And LessThan(50))
只是.NET的函数指针还差点劲,不支持C++的“成员指针”概念,也不支持对泛型类型参数的变量使用运算符,不然你帖子中所有的用法,我都照样可以用VBF写出。只可惜VB语法的抽象特性还差那么一点点。。
终于实现了方法调用,过两天发Post介绍
employees.each do |e|
e.doSomething
end
[C#]
employees.ForEach(delegate(Employee e) { e.DoSomething(); });
[VBF]
employees.ForEach(MemberCallN(Of Employee)(AddressOf Dummy(Of Employee).DoSomething))
后面用到属性的还没法实现……努力中