delete hash[key] deprecated???

Max Samukha samukha at voliacable.com.removethis
Tue Jul 15 23:45:09 PDT 2008


On Wed, 16 Jul 2008 01:23:30 +0400, "Koroskin Denis"
<2korden+dmd at gmail.com> wrote:

>But you still have to remove a dead pointer from a collection:
>
>delete *("x" in hash);
>hash.remove("x");

If 'remove' was modified to return the removed value, more compact
syntax would be possible:

delete hash.remove("x");

Also, there would be no need to search for the value twice and
introduce a temporary when the removed value is needed for further
processing:

// do something with the value, for example, pass it to a function
foo(hash.remove("x"));

instead of:
auto v = hash["x"];
hash.remove("x");
foo(v);


More information about the Digitalmars-d-learn mailing list