我試圖在VB中實現類似咖喱的效果。我希望能夠做到這一點:嵌套函數沒有與委託相同的簽名
Dim wrap = WrapNumber("-")
wrap(5) 'returns "-5-"
這裏是我的功能:
Private Function WrapNumber(ByVal separator As String) As Func(Of Integer, String)
Return Function(ByRef number As Integer) As String
Return separator + number + separator
End Function
End Function
我得到這個消息Return
行錯誤:
嵌套函數不具有代表簽名
Func(Of Integer, String)
我'米不知道爲什麼我得到這個錯誤。函數WrapNumber
返回一個函數,該函數採用Integer
並返回String
,因此從我所看到的它具有與WrapNumber
簽名中給出的Func
相同的類型。
只是spitballing,但我敢打賭,'ByRef'是造成你的問題。 'Func'不支持ByRef參數。 –
刪除'ByRef'並使用'&'而不是'+' –