【发布时间】:2018-03-31 13:01:04
【问题描述】:
什么是 System.OverflowException?
Private Sub buttonSD_Click(sender As Object, e As RoutedEventArgs) Handles buttonSD.Click
AngkaPertama = textBox1.Text
AngkaKedua = textBox2.Text
If Kalkulasi = "+" Then
Hasil = AngkaPertama + AngkaKedua
ElseIf Kalkulasi = "-" Then
Hasil = AngkaPertama - AngkaKedua
ElseIf Kalkulasi = "*" Then
Hasil = AngkaPertama * AngkaKedua
ElseIf Kalkulasi = "/" Then
Hasil = AngkaPertama / AngkaKedua
End If
textBoxHasil.Text = Hasil
End Sub
我用的是Long,我需要用ULong吗?
【问题讨论】:
-
分区中可能有问题。一个长除以一个长肯定可以产生一个双倍。还要检查除以零。
-
事实上,long / long 的结果始终是 double。
-
Option Explicit/Option Strict- 目前你的变量是Variants,而VB.Net正在猜测应该是什么。此外,您正在使用Strings,然后在没有任何显式转换的情况下进行算术运算。 -
@AJD :
Variant在 VB.NET 中不存在。如果有的话,他们会是Objects。但是我认为 OP 已经在其他地方声明了变量,只是错过了向我们展示声明。Option Explicit默认开启,我怀疑 OP 已禁用它。 -
@VisualVincent:谢谢 - 我最近一直在两种语言之间交换 - 我自己有点困惑!
标签: wpf vb.net visual-studio-2015