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

开发 后端
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转换运算符相关使用技巧就为大家介绍到这里。

责任编辑:曹凯 来源: wewill.cn
相关推荐

2010-01-14 13:08:37

VB.NET运算符

2009-10-28 10:09:07

VB.NET Dire

2010-01-07 14:52:41

VB.NET运算符

2010-01-21 17:39:26

VB.NET运算符过程

2010-01-19 15:30:44

VB.NET比较运算符

2010-01-19 17:03:25

VB.NET可执行语句

2010-01-08 10:48:05

VB.NET多线程

2010-01-22 17:48:46

VB.NET运算符重载

2010-01-20 14:06:36

VB.NET运算符组合

2010-01-18 14:08:29

VB.NET类型转换

2010-01-13 09:31:39

VB.NET窗体打印

2010-01-20 14:00:03

VB.NET串联运算符

2009-10-23 10:18:43

VB.NET运算符

2010-01-18 15:01:02

VB.NET异常迭代捕

2010-01-14 09:55:06

VB.NET IEnu

2010-01-08 14:50:47

VB.NET测试硬盘速

2010-01-20 13:53:29

VB.NET分析电子邮

2010-01-21 10:12:57

VB.NET控件自动排

2009-12-08 10:00:36

PHP比较运算符

2010-01-11 11:02:27

VB.NET调用存储过
点赞
收藏

51CTO技术栈公众号