Thread overview | |||||||||
---|---|---|---|---|---|---|---|---|---|
|
April 18, 2007 clear AAs | ||||
---|---|---|---|---|
| ||||
Hi, I have a simple question, how can I remove all elements of an associative array in an elegant way? The length property of an AA is read only. Doing a foreach/remove seems a bit to much text; most containers provide some clear method. |
April 18, 2007 Re: clear AAs | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mandel | Mandel wrote:
> Hi,
>
> I have a simple question, how can I remove all elements of an associative array
> in an elegant way?
> The length property of an AA is read only.
> Doing a foreach/remove seems a bit to much text; most containers provide some clear method.
import std.stdio;
void main() {
bool[char[]] aa;
aa["abc"] = true;
aa["def"] = false;
writefln(aa);
aa = aa.init;
writefln(aa);
}
|
April 18, 2007 Re: clear AAs | ||||
---|---|---|---|---|
| ||||
Posted in reply to Bradley Smith | Bradley Smith wrote: > Mandel wrote: >> Hi, >> >> I have a simple question, how can I remove all elements of an >> associative array >> in an elegant way? >> The length property of an AA is read only. >> Doing a foreach/remove seems a bit to much text; most containers >> provide some clear method. > > > import std.stdio; > > void main() { > > bool[char[]] aa; > aa["abc"] = true; > aa["def"] = false; > writefln(aa); > > aa = aa.init; > writefln(aa); > } ... that's so simple; why didn't I think of that before?! Thanks for that! :) -- Daniel -- int getRandomNumber() { return 4; // chosen by fair dice roll. // guaranteed to be random. } http://xkcd.com/ v2sw5+8Yhw5ln4+5pr6OFPma8u6+7Lw4Tm6+7l6+7D i28a2Xs3MSr2e4/6+7t4TNSMb6HTOp5en5g6RAHCP http://hackerkey.com/ |
April 18, 2007 Re: clear AAs | ||||
---|---|---|---|---|
| ||||
Posted in reply to Bradley Smith | Bradley Smith napisaĆ(a):
> Mandel wrote:
>> Hi,
>>
>> I have a simple question, how can I remove all elements of an associative array
>> in an elegant way?
>> The length property of an AA is read only.
>> Doing a foreach/remove seems a bit to much text; most containers provide some clear method.
>
>
> import std.stdio;
>
> void main() {
>
> bool[char[]] aa;
> aa["abc"] = true;
> aa["def"] = false;
> writefln(aa);
>
> aa = aa.init;
> writefln(aa);
> }
>
You can also do it in following way:
aa = null;
BR
Marcin Kuszczak
aarti_pl
|
April 18, 2007 Re: clear AAs | ||||
---|---|---|---|---|
| ||||
Posted in reply to Daniel Keep | On Wed, 18 Apr 2007 18:01:00 +1000, Daniel Keep <daniel.keep.lists@gmail.com> wrote:
>
>
>Bradley Smith wrote:
>> Mandel wrote:
>>> Hi,
>>>
>>> I have a simple question, how can I remove all elements of an
>>> associative array
>>> in an elegant way?
>>> The length property of an AA is read only.
>>> Doing a foreach/remove seems a bit to much text; most containers
>>> provide some clear method.
>>
>>
>> import std.stdio;
>>
>> void main() {
>>
>> bool[char[]] aa;
>> aa["abc"] = true;
>> aa["def"] = false;
>> writefln(aa);
>>
>> aa = aa.init;
>> writefln(aa);
>> }
>
>... that's so simple; why didn't I think of that before?!
>
>Thanks for that! :)
>
> -- Daniel
Or aa = null (aa.init == null)
|
April 18, 2007 Re: clear AAs | ||||
---|---|---|---|---|
| ||||
Posted in reply to Max Samukha | Max Samukha wrote:
> Daniel Keep wrote:
>
>>Bradley Smith wrote:
>>
>>>import std.stdio;
>>>
>>>void main() {
>>>
>>> bool[char[]] aa;
>>> aa["abc"] = true;
>>> aa["def"] = false;
>>> writefln(aa);
>>>
>>> aa = aa.init;
>>> writefln(aa);
>>>}
>>
>>... that's so simple; why didn't I think of that before?!
>>
>>Thanks for that! :)
>>
>> -- Daniel
>
>
> Or aa = null (aa.init == null)
can you then fill it up again?
|
April 19, 2007 Re: clear AAs | ||||
---|---|---|---|---|
| ||||
Posted in reply to BCS | On Wed, 18 Apr 2007 09:18:50 -0700, BCS <BCS@pathlink.com> wrote:
>Max Samukha wrote:
>> Daniel Keep wrote:
>>
>>>Bradley Smith wrote:
>>>
>>>>import std.stdio;
>>>>
>>>>void main() {
>>>>
>>>> bool[char[]] aa;
>>>> aa["abc"] = true;
>>>> aa["def"] = false;
>>>> writefln(aa);
>>>>
>>>> aa = aa.init;
>>>> writefln(aa);
>>>>}
>>>
>>>... that's so simple; why didn't I think of that before?!
>>>
>>>Thanks for that! :)
>>>
>>> -- Daniel
>>
>>
>> Or aa = null (aa.init == null)
>
>can you then fill it up again?
Yes
|
Copyright © 1999-2021 by the D Language Foundation