1

我想在 VB.NET 中创建两个函数,其中一个将计算面积,另一个函数将通过将面积乘以用户输入的价格来获得总价格。有没有办法可以将一个函数的输出包含在另一个函数中?我的程序目前无法编译,因为我相信我的逻辑不正确。谢谢!

Public Function area(ByRef enteredLength As Double, ByRef enteredWidth As Double)
    area = Val(enteredLength) * Val(enteredWidth)
End Function

Public Function totalPrice(ByRef enteredLength As Double, ByRef enteredWidth As Double)
    totalPrice = Val(area) * Val(enteredPrice)
End Function
4

2 回答 2

1

您可以调用该函数并将返回值用作计算的一部分,如下所示:

Public Function area(ByRef enteredLength As Double, ByRef enteredWidth As Double) As Double
    Return enteredLength * enteredWidth
End Function

Public Function totalPrice(ByRef enteredLength As Double, ByRef enteredWidth As Double) As Double
    Return area(enteredLength, enteredWidth) * enteredPrice
End Function

没有必要使用该Val()函数,因为您将Double值相乘并返回 a Double,如上面的代码 ( As Double) 所示。

注意:您还可以使用Return关键字以及名称Function来返回值。

于 2013-09-24T03:17:15.343 回答
0

尝试这个。需要将参数值传入totalPrice里面的area函数调用中

Public Function area(ByRef enteredLength As Double, ByRef enteredWidth As Double)
    area = enteredLength * enteredWidth
End Function

Public Function totalPrice(ByRef enteredLength As Double, ByRef enteredWidth As Double)
    totalPrice = area(enteredLength, enteredWidth) * enteredPrice
End Function

我还建议将您的函数参数更改为ByVal而不是ByRef. 我会考虑将“enteredPrice”值作为参数传递给 totalPrice 函数。

于 2013-09-24T03:16:29.723 回答