" Dim X为Y",如何从类型NAMES定义变量

时间:2014-09-08 03:33:21

标签: vb.net

我可以从类型NAMES定义变量,我的意思是我可以使用一个返回“我”的功能吗? 一个类型名称(如整数),我将一个变量定义为函数返回的类型名称

我能做到吗?,如果有,怎么做?

代码示例:

Public Function WhatIsTheType(ByVal num As Integer) as <I Dont Know What Comes Here>
    If num = 1 Then
        Return Int
    ElseIf num = 2 Then
        Return String
    ElseIf num = 3 Then
        Return Char
    End If
    Return Object
End Function

Public Sub main()
    Dim y As Integer = 2
    Dim X As WhatIsTheType(y)
End Sub

1 个答案:

答案 0 :(得分:3)

Type-expressions 的值不能在代码中用作类型。代码中出现的类型(例如,变量的类型)必须在编译时引用实际类型,而不能依赖于运行时值或计算。< / p>

因此,即使它被声明为Function WhatIsTheType(..) As Type(请参阅Type class),在尝试应用实际类型时,无用通过返回Type-value)到变量声明。

如果没有进一步的统一,可以说最好的是Dim x As Object(即静态类型不能进一步细化),处理起来并不是很有趣。< / p>