2012-02-01 109 views
1

我想在VB.NET中实现地图功能,我已经尝试了下面。地图功能在vb.net

Function Map(a,f) 
    Dim i 
    for each i in a 
     f(i) 
    next 
End Function 

Function alert(a) 
    MessageBox.Show(a) 
end function 

但上面的代码不工作,并说alert没有声明。
请帮助我。

+0

没有数据类型?你确定这是VB.NET代码而不是VB6或VBS吗? – tcarvin 2012-02-01 14:06:25

回答

1

你的函数不返回任何东西。试试这个:

Public Sub Map(Of T)(ByVal a As IEnumerable(Of T), ByVal f As Action(T)) 
    For Each i As T In a 
     f(a) 
    Next 
End Sub 

Public Sub alert(ByVal a As Object) 
    MessageBox.Show(a) 
End Sub 
+3

这不是'map'。它是'每个',因为它不返回结果。 – Cuadue 2013-09-25 18:56:27

1

我不是vb专家。但是,如果你使用的是vb.net。它应该是这样的:

MessageBox.Show("Your Message Here") 

我在VB6中它是这样的:

MsgBox("Your Message Here") 

之所以我问的是。在vb.net中您可以使用

Option Strict OFF 

,然后你不必声明任何类型。但默认情况下在vb.net中设置为

Option Strict ON