Not quite got it, is my solution incorrect?
Code: Select all
_unset(v*) => (e := v.__Enum(1), c := (*) => (e(&a), !%a% := unset), StrGet(Buffer(v.Length*2, 1)) ~= '.(?Cc)')
Code: Select all
_unset(v*) => (e := v.__Enum(1), c := (*) => (e(&a), !%a% := unset), StrGet(Buffer(v.Length*2, 1)) ~= '.(?Cc)')
Ok, I dont mind.
Really? Why didn't I notice it.
Why not:
Code: Select all
myvar := 3
myvar := unset
MsgBox 'OK'
MsgBox myvar ; <——— Error: This variable has not been assigned a value.
Code: Select all
N := 100000
; normal array
a:=['a']
t1 := A_TickCount
loop N
a[1] .= 'a'
t2 := A_TickCount
;pseudo-array
b1:='b'
t3 := A_TickCount
loop N
b%'1'% .= 'b'
t4 := A_TickCount
msgbox 'a:`t' t2-t1 '`nb:`t' t4-t3
Code: Select all
c[1] := 'c' ; define c
t5 := A_TickCount
loop N
; complete the loop
t6 := A_TickCount
Code: Select all
a: 906
b: 0
c: 16