delete hash[key] deprecated???
Stewart Gordon
smjg_1998 at yahoo.com
Mon Jul 14 17:14:37 PDT 2008
"Jarrett Billingsley" <kb3ctd2 at yahoo.com> wrote in message
news:fopjrt$1b2c$1 at digitalmars.com...
<snip>
>> If not, do I have to do:
>> auto c = hash["x"];
>> hash.remove["x"];
>> delete c;
>
> Yeah, you do.
No I don't.
delete * cast(Object*) &hash["x"];
Test code:
----------
import std.stdio;
class Test {
~this() { writefln("Object destroyed"); }
}
void main() {
Test[int] aa;
aa[42] = new Test;
delete * cast(Object*) &aa[42];
writefln(42 in aa);
}
----------
The last statement is as much to show that it is actually deleted there and
then as to show that it suppresses removal of the AA key.
Stewart.
--
My e-mail address is valid but not my primary mailbox. Please keep replies
on the 'group where everybody may benefit.
More information about the Digitalmars-d-learn
mailing list