source: Include/Classes/System/Object.ab@ 195

Last change on this file since 195 was 195, checked in by dai, 17 years ago

オブジェクトの循環参照を許容した(構造体はダメ)。
抽象クラスをメンバの型に指定できるようにした。
メンバがオブジェクトだったとき、自動的にNewするのをやめ、初期値としてNothingを指定するようにした。

【ArrayListの改良】
・ArrayList_Elementを廃止し、実装をArrayListのprivateに置いた。
・一通りのパラメータを*ObjectからObjectへ変更した。

【その他】
・TypeInfo改良中...
・Objectクラスに実行時型情報用のtypeInfoメンバを追加した。

File size: 785 bytes
Line 
1Class Object
2
3 ' 実行時型情報
4 typeInfo As TypeInfo
5
6Public
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*/
39End Class
Note: See TracBrowser for help on using the repository browser.