VB中DirectCast和CType的区别及使用

  • DirectCast:主要用于执行明确的类型转换,只能在编译时确定类型关系时使用。如果转换不是有效的,则会引发异常。如果你要把一个 Object 变量用 DirectCast 转换成 String, 必须确定这个变量确实包含一个 String (或者为 Nothing). 如果它包含一个 Integer 之类的东西, 会抛出一个异常。
  • CType:在某些情况下,可以执行隐式或明确的类型转换。它具有一定的类型推断能力,因此在一些情况下可能会执行额外的转换工作以确保类型的一致性。在无法确定类型关系的情况下,它会返回 Nothing 或引发异常。
1
2
3
4
5
6
7
8
9
Dim anOb As Object = "word"
Dim aStr As String
aStr = CType(anOb, String)
aStr = DirectCast(anOb, String)
 
Dim anNum As Integer
Dim anStr As String
Dim afterStr As String
afterStr = DirectCast(anNum , anStr)' This will not work
posted @   zengxw1113  阅读(147)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示