VB.NET轉(zhuǎn)換運(yùn)算符代碼示例解讀
VB.NET編程語言中的運(yùn)算符操作對(duì)于一個(gè)程序開發(fā)來說起了非常重要的作用。我們?cè)趯W(xué)習(xí)的過程中需要加強(qiáng)對(duì)這方面的注意,掌握好這些基礎(chǔ)知識(shí),才能更好的運(yùn)用這門語言幫助我們實(shí)現(xiàn)程序的開發(fā)。#t#
如果已定義了類或結(jié)構(gòu),則可以定義類或結(jié)構(gòu)的類型與其他數(shù)據(jù)類型(如 Integer、Double 或 String)之間的VB.NET轉(zhuǎn)換運(yùn)算符。
將類型轉(zhuǎn)換定義為類型或結(jié)構(gòu)中的 CType 函數(shù)過程。所有轉(zhuǎn)換過程必須為 Public Shared,并且每個(gè)轉(zhuǎn)換過程必須指定 Widening 或 Narrowing。
在類或結(jié)構(gòu)上定義一個(gè)運(yùn)算符也稱為“重載”該運(yùn)算符。
VB.NET轉(zhuǎn)換運(yùn)算符示例
下面的示例定義名稱為 digit 的結(jié)構(gòu)與 Byte 之間的轉(zhuǎn)換運(yùn)算符。
- Visual Basic
- Public Structure digit
- Private dig As Byte
- Public Sub New(ByVal b As Byte)
- If (b < 0 OrElse b > 9)
Then Throw New _- System.ArgumentException
("Argument outside range for Byte")- Me.dig = b
- End Sub
- Public Shared Widening Operator
CType(ByVal d As digit) As Byte- Return d.dig
- End Operator
- Public Shared Narrowing Operator
CType(ByVal b As Byte) As digit- Return New digit(b)
- End Operator
- End Structure
可以使用下面的代碼測(cè)試結(jié)構(gòu) digit。
- Visual Basic
- Public Sub consumeDigit()
- Dim d1 As New digit(4)
- Dim d2 As New digit(7)
- Dim d3 As digit = CType(CByte(3), digit)
- Dim s As String = "Initial 4 generates "
& CStr(CType(d1, Byte)) _- & vbCrLf & "Initial 7 generates "
& CStr(CType(d2, Byte)) _- & vbCrLf & "Converted 3 generates "
& CStr(CType(d3, Byte))- Try
- Dim d4 As digit
- d4 = CType(CType(d1, Byte) +
CType(d2, Byte), digit)- Catch e4 As System.Exception
- s &= vbCrLf & "4 + 7 generates "
& """" & e4.Message & """"- End Try
- Try
- Dim d5 As digit = CType(CByte(10), digit)
- Catch e5 As System.Exception
- s &= vbCrLf & "Initial 10 generates
" & """" & e5.Message & """"- End Try
- MsgBox(s)
- End Sub
VB.NET轉(zhuǎn)換運(yùn)算符相關(guān)使用技巧就為大家介紹到這里。