Opened 17 years ago
Last modified 17 years ago
#156 new タスク
Deleteを明示的に行うとデストラクタが2回呼ばれてしまう
Reported by: | イグトランス (egtra) | Owned by: | イグトランス (egtra) |
---|---|---|---|
Priority: | 低-minor | Milestone: | ablib_α1 |
Component: | ablib | Version: | |
Keywords: | Cc: |
Description
次のコードで、~Hoge()が2回呼ばれることから明らか。コメントアウトしたポインタ構文では1回しか呼ばれない模様。
#console Class Hoge Sub ~Hoge() Print "~Hoge()" End Sub End Class Dim h = New Hoge Delete ObjPtr(h) h = Nothing /* Dim h As *Hoge h = New Hoge Delete h */ Dim i As Long For i = 0 To 10 GC_malloc(4 * 1024 * 1024) Next Sleep(5000)
Note:
See TracTickets
for help on using tickets.
上のポインタのコードで、参照を消していなかった。念のため、参照を消してみたが、やはり1回しか呼ばれなかった。