gpt4 book ai didi

vb.net - VB.NET 中的 TryCast 和直接转换是什么?

转载 作者:行者123 更新时间:2023-12-01 16:06:23 24 4
gpt4 key购买 nike

Possible Duplicate: Why use TryCast instead of DirectCast?

我想了解TryCastDirectCast在 VB.NET 中。它们有什么区别?

最佳答案

TryCast之间的主要区别和 DirectCast (或 CType )是 CTypeDirectCast 都会抛出 Exception ,特别是 InvalidCastException如果转换失败。这是一个潜在的“昂贵”操作。

相反,如果指定的转换失败或无法执行,TryCast 运算符将返回 Nothing,且不会引发任何异常。这对于性能来说可能会稍微好一些。

有关 TryCastDirectCastCType 的 MSDN 文章说得最好:

If an attempted conversion fails, CType and DirectCast both throw an InvalidCastException error. This can adversely affect the performance of your application. TryCast returns Nothing (Visual Basic), so that instead of having to handle a possible exception, you need only test the returned result against Nothing.

还有:

DirectCast does not use the Visual Basic run-time helper routines for conversion, so it can provide somewhat better performance than CType when converting to and from data type Object.

关于vb.net - VB.NET 中的 TryCast 和直接转换是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3591271/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com