delete hash[key] deprecated???

Regan Heath regan at netmail.co.nz
Wed Jul 16 01:27:20 PDT 2008


JAnderson wrote:
> Max Samukha wrote:
>> 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);
> 
> I think this is a good idea.

Seconded!

Regan Heath


More information about the Digitalmars-d-learn mailing list