2

我有一个功能:

Public Function F(ByVal a As Double, ByVal b As Double,
                  ByVal c As Double, ByVal x As Double) As Double
  y = ax ^ 3 + bx ^ 2 + cx + d
  Return y
End Function

如何创建一个函数,让我可以读取参数 a、b、c、d 并返回一元函数?例如 a=1,b=1,c=3,d=4:

Public Function F(ByVal x As Double) As Double
  y = 1x ^ 3 + 2x ^ 2 + 3x + 4
  Return y
End Function

或者换句话说,我如何创建一个返回类型函数的函数

Func(Of Double, Double)
4

1 回答 1

2

使用 lambda 函数。

Public Function F(ByVal a As Double, ByVal b As Double, ByVal c As Double) As Func(of Double, Double)
    Return Function(ByVal x As Double) As Double
               Return ax ^ 3 + bx ^ 2 + cx + d
           End Function
End Function
于 2013-06-04T12:32:01.033 回答