为什么我在Visual Basic 2010中收到此错误?这是什么意思?

时间:2015-05-15 01:56:05

标签: vb.net

我不知道为什么会这样做但是这里链接的代码没有显示在图片中。

string中,类型为 Dim cursorValue as BigInteger Dim cursorPrice as BigInteger Dim xCursor as Decimal My.Settings.cursorValue = cursorValue.ToString My.Settings.cursorPrice = cursorPrice.ToString My.Settings.xCursor = xCursor

cursorUpgrade.Text = "Cursors: " & cursorValue.ToString("N0") & Environment.NewLine & "Upgrade: " & cursorPrice.ToString("N0")

错误: enter image description here

更新显示的值:

{{1}}

2 个答案:

答案 0 :(得分:0)

您在链接图片的代码中遇到的问题

cursorValue += xCursor
如果cursorValue是BigInteger且xCursor是Dewcimal,由于错误消息中给出的原因,

无法工作。相反,你可以使用

cursorValue += New BigInteger(xCursor)

答案 1 :(得分:0)

您无法在VB中直接混合BigInteger和十进制值。

处理此问题的一种方法是将十进制值向上扩展10次,并使其成为BigInteger并在BigInteger域中执行aritmetic。因此,如果您需要将BigInteger乘以任意十进制数,并且您知道您愿意接受的精度,您可以这样做(假设您希望在乘以时保持4位小数的精度十进制数字):

cursorValue *= (BigInteger)(xCursor * 10000)
cursorValue /= 10000

如果要添加1,只需添加1,而不是尝试添加xCursor

cursorValue += 1

或者,如果您知道要将xCursor添加为整数:

cursorValue += (BigInteger)xCursor