Last change
on this file since 195 was
195,
checked in by dai, 16 years ago
|
オブジェクトの循環参照を許容した(構造体はダメ)。
抽象クラスをメンバの型に指定できるようにした。
メンバがオブジェクトだったとき、自動的にNewするのをやめ、初期値としてNothingを指定するようにした。
【ArrayListの改良】
・ArrayList_Elementを廃止し、実装をArrayListのprivateに置いた。
・一通りのパラメータを*ObjectからObjectへ変更した。
【その他】
・TypeInfo改良中...
・Objectクラスに実行時型情報用のtypeInfoメンバを追加した。
|
File size:
785 bytes
|
Line | |
---|
1 | Class Object |
---|
2 | |
---|
3 | ' 実行時型情報 |
---|
4 | typeInfo As TypeInfo |
---|
5 | |
---|
6 | Public |
---|
7 | |
---|
8 | Sub Object() |
---|
9 | End Sub |
---|
10 | Sub ~Object() |
---|
11 | End Sub |
---|
12 | |
---|
13 | ' 2つのオブジェクトが等しいかどうかを判断する |
---|
14 | Virtual Function Equals( object As Object ) As Boolean |
---|
15 | If This.GetHashCode() = object.GetHashCode() Then |
---|
16 | Return True |
---|
17 | Else |
---|
18 | Return False |
---|
19 | End If |
---|
20 | End Function |
---|
21 | Static Function Equals( objectA As Object, objectB As Object ) As Boolean |
---|
22 | Return objectA.Equals( objectB ) |
---|
23 | End Function |
---|
24 | |
---|
25 | ' ハッシュコードを取得する |
---|
26 | Virtual Function GetHashCode() As Long |
---|
27 | Return VarPtr( This ) As Long |
---|
28 | End Function |
---|
29 | |
---|
30 | ' オブジェクトに関係する文字列を返す |
---|
31 | Virtual Function ToString() As String |
---|
32 | Return "Object" |
---|
33 | End Function |
---|
34 | |
---|
35 | /* |
---|
36 | Function Operator Downcast() As VoidPtr |
---|
37 | End Function |
---|
38 | */ |
---|
39 | End Class |
---|
Note: See
TracBrowser
for help on using the repository browser.