这个VB代码有什么问题?

问题描述:

Function nameTonumber(name As String) 

    Dim number As Integer 
    number = 0 

    If (name = "Aa") Then 

     number = 1 

    ElseIf (name = "Bb") Then 

     number = 2 

    ElseIf (name = "Cc") Then 

     number = 3 

    Else 

     number = 0 

    End If 

End Function 
+1

这是VB.NET还是VB6?下次您提出问题时,**请具体说明**。你问有什么问题?那么,你为什么想知道?什么不起作用? – 2012-04-21 19:19:57

+0

好了之后,如果我添加;退货编号;仍然不起作用? – user1079898 2012-04-21 19:44:00

+0

为了从函数中返回一个值,一旦确定了“数字”应该是什么,就使用'nameToNumber = number'或'return number'(该表单取决于您使用的是哪个版本的VB)。 – 2012-04-21 19:49:39

更改第一行:功能nameTonumber(名称作为字符串)作为整数

以上结束函数添加:

nameTonumber =号码“如果您正在使用VB6。

return number'如果您使用VB.NET

+0

非常感谢你! – user1079898 2012-04-21 23:58:56

  1. 围绕If条件的括号是多余的。
  2. Else是多余的 - number已经为零。
  3. 您不会返回任何值。
  4. 您没有指定返回类型。
  5. 您可以使用Select Case使此表单的多个测试更具可读性。

还有很多,如果这是VB.NET代码。

在文体上,您的代码占用太多空间:删除不必要的空行,它们不会使代码更具可读性 - 恰恰相反。

+0

你忘了“0.它是VB的事实”:P – ThiefMaster 2012-04-21 19:22:30

+1

@ThiefMaster我喜欢VB。 – 2012-04-21 19:23:07