Opened 17 years ago
Closed 17 years ago
#177 closed バグ(ケアレスミス) (fixed)
Thisを使用してのデリゲートの作成がうまくいかない
Reported by: | イグトランス (egtra) | Owned by: | dai |
---|---|---|---|
Priority: | 低-minor | Milestone: | AB5 CP6 |
Component: | Compiler | Version: | |
Keywords: | デリゲート | Cc: |
Description
以下のコードでTest (This)とTest (Implicit This)のときにTarget()で出力されるObjPtr(This)とxの値がおかしい。
#console Delegate Sub MyDelegate() Class MyClass Public Sub Test() Print "[Test] This: " + Hex$(ObjPtr(f)) Print "[Test] x: " + Hex$(f.x) Print "----Test (This)----" Dim h = New MyDelegate(AddressOf(This.Target)) h() Print "----Test (別オブジェクト)----" Dim r = This Dim i = New MyDelegate(AddressOf(r.Target)) i() Print "----Test (Implicit This)----" Dim j = New MyDelegate(AddressOf(Target)) j() End Sub Sub Target() Print "[Target] This: " + Hex$(ObjPtr(This)) Print "[Target] x: " + Hex$(x) End Sub x As DWord End Class Dim f = New MyClass f.x = &hc0ffee f.Test() Print "----Global----" Dim h = New MyDelegate(AddressOf(f.Target)) h() System.Console.ReadLine()
Change History (3)
comment:1 by , 17 years ago
Status: | new → assigned |
---|
comment:2 by , 17 years ago
comment:3 by , 17 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Note:
See TracTickets
for help on using tickets.
32bit版のみ、[546]にて修正。x64版を後日修正すること。