Last change
on this file since 405 was 396, checked in by dai, 17 years ago |
Foreachを試験的に実装。
ジェネリクスインターフェイスをサポートした。
|
File size:
1.4 KB
|
Rev | Line | |
---|
[1] | 1 | Class EnumBase
|
---|
| 2 | Protected
|
---|
[210] | 3 | value As Long
|
---|
[282] | 4 | lpszName As LPTSTR
|
---|
[1] | 5 | Public
|
---|
[282] | 6 | Sub EnumBase(value As Long,lpszName As LPTSTR)
|
---|
[210] | 7 | This.value = value
|
---|
| 8 | This.lpszName = lpszName
|
---|
[1] | 9 | End Sub
|
---|
[282] | 10 |
|
---|
[1] | 11 | Sub ~EnumBase()
|
---|
| 12 | End Sub
|
---|
| 13 |
|
---|
[210] | 14 | Override Function ToString() As String
|
---|
| 15 | Return New String( lpszName )
|
---|
| 16 | End Function
|
---|
[1] | 17 |
|
---|
[210] | 18 | Sub Copy(obj As EnumBase)
|
---|
| 19 | This.value = obj.value
|
---|
| 20 | This.lpszName = obj.lpszName
|
---|
[1] | 21 | End Sub
|
---|
[282] | 22 |
|
---|
[396] | 23 | Function Operator() As Int64
|
---|
| 24 | Return This.value
|
---|
| 25 | End Function
|
---|
[1] | 26 | Function Operator() As Long
|
---|
[210] | 27 | Return This.value
|
---|
[1] | 28 | End Function
|
---|
[396] | 29 | Function Operator() As DWord
|
---|
| 30 | Return This.value
|
---|
| 31 | End Function
|
---|
| 32 | Function Operator() As Boolean
|
---|
| 33 | Return ( This.value <> 0 )
|
---|
| 34 | End Function
|
---|
[26] | 35 |
|
---|
[210] | 36 | Function Operator == (value As Long) As Boolean
|
---|
| 37 | If This.value = value Then
|
---|
[201] | 38 | Return True
|
---|
[26] | 39 | Else
|
---|
[201] | 40 | Return False
|
---|
[26] | 41 | End If
|
---|
| 42 | End Function
|
---|
[131] | 43 |
|
---|
[210] | 44 | Function Operator == (enumBase As EnumBase) As Boolean
|
---|
| 45 | If This.value = enumBase.value Then
|
---|
| 46 | Return True
|
---|
| 47 | Else
|
---|
| 48 | Return False
|
---|
| 49 | End If
|
---|
[131] | 50 | End Function
|
---|
[396] | 51 |
|
---|
| 52 | Function Operator or (enumBase As EnumBase) As Boolean
|
---|
| 53 | Return ( This.value or enumBase.value ) <> 0
|
---|
[131] | 54 | End Function
|
---|
[201] | 55 |
|
---|
[396] | 56 | Function Operator and (enumBase As EnumBase) As Boolean
|
---|
| 57 | Return ( This.value and enumBase.value ) <> 0
|
---|
[131] | 58 | End Function
|
---|
[396] | 59 | /*
|
---|
[210] | 60 | Function Operator xor (enumBase As EnumBase) As EnumBase
|
---|
| 61 | Return New EnumBase(This.value Xor enumBase.value)
|
---|
[131] | 62 | End Function
|
---|
[288] | 63 | */
|
---|
[210] | 64 | End Class
|
---|
Note:
See
TracBrowser
for help on using the repository browser.