转换与CType

时间:2011-04-04 21:20:43

标签: .net vb.net type-conversion ctype

我对两个看似相同的VB.NET函数的存在感到有些困惑:CType(args)Convert.ToType(args)。我对.NET和VB一般都很新,所以我不太确定其中一个是VB6遗留物还是它们实际上有不同的用途/用途/限制。其中一个更新/更安全吗?是否有理由使用一个而不是另一个?

干杯! =)

2 个答案:

答案 0 :(得分:10)

CType来自VB6次,在效率方面不是最好的。您应该可以使用Convert.ToXxxx()方法进行转换,使用TryCast()DirectCast()进行投射而不是CType()

答案 1 :(得分:2)

this page on MSDN。 (转换函数,CType,DirectCast和System.Convert部分)。

该部分的结论如下:

  

推荐:对于大多数转化,请使用内在语言   转换关键字(包括 CType ),以简洁明了   在类型之间进行转换时允许编译器优化。使用    DirectCast ,用于将Object转换为String并提取值   当嵌入类型已知时(对象),在对象变量中装箱的类型   是,强制是没有必要的。)