Re: One liner alternatives for initing and pushing some values into array

2017-11-20 Thread codephantom via Digitalmars-d-learn

On Monday, 20 November 2017 at 08:37:32 UTC, kerdemdemir wrote:

bool boolList[] = { a, b, c };

D alternative(at least my D alternative) seem long. Is there 
any better way for

initialing  and pushing values at the same time.

Erdem



Your use of the appender method suggest to me you want to be able 
to append, as opposed to just initialise.


module test;

import std.stdio;
import std.array;

void main()
{
bool[] boolList;

bool a = true;
bool b = false;
bool c = false;

boolList ~= [ a, b, c ];

bool d = true;
bool e = false;
bool f = false;

boolList ~= [ d, e, f ];

// ...
}



Re: One liner alternatives for initing and pushing some values into array

2017-11-20 Thread Nicholas Wilson via Digitalmars-d-learn

On Monday, 20 November 2017 at 08:37:32 UTC, kerdemdemir wrote:

I need to init and push some values into a array something like:

//DMD64 D Compiler 2.072.2
import std.stdio;
import std.array;

void main()
{
bool a = true;
bool b = false;
bool c = false;

bool[] boolList;
auto boolListAppender = boolList.appender();
boolListAppender ~= [ a, b, c];
}

Live example : http://rextester.com/TJLIXU71426

My question is about

bool[] boolList;
auto boolListAppender = boolList.appender();
boolListAppender ~= [ a, b, c];


I could do the same in one line with C++:

bool boolList[] = { a, b, c };



Change the braces to brackets.

D alternative(at least my D alternative) seem long. Is there 
any better way for

initialing  and pushing values at the same time.

Erdem




One liner alternatives for initing and pushing some values into array

2017-11-20 Thread kerdemdemir via Digitalmars-d-learn

I need to init and push some values into a array something like:

//DMD64 D Compiler 2.072.2
import std.stdio;
import std.array;

void main()
{
bool a = true;
bool b = false;
bool c = false;

bool[] boolList;
auto boolListAppender = boolList.appender();
boolListAppender ~= [ a, b, c];
}

Live example : http://rextester.com/TJLIXU71426

My question is about

bool[] boolList;
auto boolListAppender = boolList.appender();
boolListAppender ~= [ a, b, c];


I could do the same in one line with C++:

bool boolList[] = { a, b, c };

D alternative(at least my D alternative) seem long. Is there any 
better way for

initialing  and pushing values at the same time.

Erdem