我认为这将是一个快速的谷歌,但广泛的搜索没有产生任何结果。关于类型转换的一切似乎都围绕这个概念跳舞。
我想得到变量“a”的类型,并创建一个名为“b”的新变量。否则,我可以将“a”作为已声明的类型,将“b”简单地作为对象,然后尝试将“b”转换为“a”类型。
Dim a As Integer
Dim b As Whatever a Is
OR
TryCast(b, Whatever a Is)
我还想使用类型的变量表示进行转换,但无法找到有关如何执行此操作的信息。
Sorta喜欢:
Dim a As Integer
Dim b As Object
Dim t As Type
t = a.GetType()
TryCast(b, t)
意识到我在这里完全滥用了TryCast,我主要试图实现我的目标。我认为这很容易做到,但我真的找不到任何具体的信息。有什么想法吗?
答案 0 :(得分:0)
有人发布了正确答案,但随后将其删除,以便重新发布:
Dim a As Integer
Dim b = Activator.CreateInstance(a.GetType())
从IDE的角度来看, b
将是Object
,因为反射在运行时发生。但是,如果您在GetType
上致电b
,您将获得System.Int32
。
我仍然很好奇你为什么要这么做。