【发布时间】:2014-06-24 08:24:08
【问题描述】:
我是 VB.Net 的新手。我的任务是使用Interface 为Power、Square、Cube 编写用户方法。当我编译代码时,我得到了错误:
Exception Caught: Array index is out of range
我不知道我在哪里犯了错误。我刚开始学习VB.Net。
接口源代码如下:
Interface Calc
Sub Square(ByVal number As Double)
Sub Cube(ByVal number As Double)
Sub Power(ByVal number As Double, ByVal raiseTo As Double)
End Interface
这是我实现上述接口的类的源代码:
Class Calculation
Implements Calc
Sub Square(ByVal number As Double) Implements Calc.Square
Console.WriteLine("Square of " & number & " = " (number * number))
End Sub
Sub Cube(ByVal number As Double) Implements Calc.Cube
Console.WriteLine("Power of " & number & " = " (number * number * number))
End Sub
Sub Power(ByVal number As Double, ByVal raiseTo As Double) Implements Calc.Power
Console.WriteLine("Power of " & number & " = " (number ^ raiseTo))
End Sub
End Class
这是主要的方法:
Sub Main()
Console.WriteLine(vbCrLf & vbTab & "********** Calculation Using Interface *********")
Dim obj As Calculation = New Calculation()
Try
obj.Square(5.0)
obj.Cube(5.0)
obj.Power(5.0, 4.0)
Catch ex As Exception
Console.WriteLine(vbCrLf & "Exception Caught: " & ex.Message.ToString())
End Try
Console.WriteLine(vbCrLf & "Press any key to exit....")
Console.ReadLine()
End Sub
【问题讨论】:
-
你在哪里得到错误??
-
嗯...
Console.WriteLine("Square of " & number.ToString() & " = " & (number * number).ToString())(缺少运算符,缺少.ToString())等? -
@hector 我不知道.. 没有具体的行。
-
@AndrewMorton 尝试了您的解决方案,但同样的错误...
-
您应该打开 Option Strict。您的代码不会在打开的情况下编译。这将允许您在设计时而不是运行时发现错误。
标签: .net arrays vb.net exception string-concatenation