VB.NET转换运算符代码示例解读

VB.NET编程语言中的运算符操作对于一个程序开发来说起了非常重要的作用。我们在学习的过程中需要加强对这方面的注意,掌握好这些基础知识,才能更好的运用这门语言帮助我们实现程序的开发。#t#

如果已定义了类或结构,则可以定义类或结构的类型与其他数据类型(如 Integer、Double 或 String)之间的VB.NET转换运算符。

将类型转换定义为类型或结构中的 CType 函数过程。所有转换过程必须为 Public Shared,并且每个转换过程必须指定 Widening 或 Narrowing。

在类或结构上定义一个运算符也称为“重载”该运算符。

VB.NET转换运算符示例

下面的示例定义名称为 digit 的结构与 Byte 之间的转换运算符。

 
 
 
  1. Visual Basic  
  2. Public Structure digit  
  3. Private dig As Byte  
  4. Public Sub New(ByVal b As Byte)  
  5. If (b < 0 OrElse b > 9) 
    Then Throw New _  
  6. System.ArgumentException
    ("Argument outside range for Byte")  
  7. Me.dig = b 
  8. End Sub  
  9. Public Shared Widening Operator 
    CType(ByVal d As digit) As Byte  
  10. Return d.dig  
  11. End Operator  
  12. Public Shared Narrowing Operator
     CType(ByVal b As Byte) As digit  
  13. Return New digit(b)  
  14. End Operator  
  15. End Structure 

可以使用下面的代码测试结构 digit。

 
 
 
  1. Visual Basic  
  2. Public Sub consumeDigit()  
  3. Dim d1 As New digit(4)  
  4. Dim d2 As New digit(7)  
  5. Dim d3 As digit = CType(CByte(3), digit)  
  6. Dim s As String = "Initial 4 generates "
     & CStr(CType(d1, Byte)) _  
  7. & vbCrLf & "Initial 7 generates "
     & CStr(CType(d2, Byte)) _  
  8. & vbCrLf & "Converted 3 generates " 
    & CStr(CType(d3, Byte))  
  9. Try  
  10. Dim d4 As digit  
  11. d4 = CType(CType(d1, Byte) + 
    CType(d2, Byte), digit)  
  12. Catch e4 As System.Exception  
  13. s &= vbCrLf & "4 + 7 generates " 
    & """" & e4.Message & """"  
  14. End Try  
  15. Try  
  16. Dim d5 As digit = CType(CByte(10), digit)  
  17. Catch e5 As System.Exception  
  18. s &= vbCrLf & "Initial 10 generates 
    " & """" & e5.Message & """"  
  19. End Try  
  20. MsgBox(s)  
  21. End Sub 

VB.NET转换运算符相关使用技巧就为大家介绍到这里。

当前名称:VB.NET转换运算符代码示例解读
文章分享:http://www.csdahua.cn/qtweb/news45/364395.html

网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网