vb的函数输入

来源:百度知道 编辑:UC知道 时间:2024/09/23 00:36:25
我想从外部输入一个函数,这样就可以随便改变函数,很方便,但不知道怎么实现.比如说这样一个程序
Public Function f(x) As Single
f = x ^ 2 + 3 * x + 1
End Function
Private Sub Command1_Click()
Call f(3)
Print f(3)
End Sub
想让f = x ^ 2 + 3 * x + 1这个函数从外部输入,这样我就可以很方便的实现好多函数的求值了,也以让函数变为x ^ 5 + 3 * x^4 ,请高手指点.

大概明白你的意思。就是预先给你准备好几种函数的模式,当你输入哪一种时,就以对应的函数模式将结果返回。很好的想法哈,对于简单的表达式是画蛇添足,但对于复杂的计算可能有用处了。可以这样:
Function f(byval x,byval model as string) as single
select case lcase(trim(model))
case "x^2+3*x+1" :f=x^2+3*x+1
case "x^5+3*x^4" :f=x^5+3*x^4
case else:msgbox "函数模式输入错误!" & model:f=0
end select
end function
然后要调用的时候,print f(3,"x^5+3*x^4"),前提是,你输入函数形式时,一定要严格按照设定的格式哈。

不是很清楚你要达到一个什么效果
如果是调用函数,可以用call f(x)或者f x两种方式调用