Initializing defaults based on type.
anon via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sat Mar 7 15:37:16 PST 2015
On Friday, 6 March 2015 at 16:04:33 UTC, Benjamin Thaut wrote:
> On Friday, 6 March 2015 at 15:36:47 UTC, anon wrote:
>> Hi,
>>
>> I can't figure this out.
>>
>> struct Pair(T)
>> {
>> T x;
>> T y;
>>
>> alias x c;
>> alias y r;
>> }
>>
>> What would like is that the x and y to be initialized to
>> different values depending on type eg:
>>
>> struct Container
>> {
>> Pair!double sample1; // This will initialize sample1 with 0
>> for both x and y
>> Pair!int sample2; // This will initialize sample2 with 1
>> for both x and y
>> }
>>
>> currently I'm using two different struct one with doubles and
>> the other with ints and initialized with default value but was
>> wondering if its possible to do the above.
>>
>> anon
>
> struct Pair(T)
> {
> static if(is(T == int))
> enum int initValue = 1;
> else
> enum T initValue = 0;
>
> T x = initValue;
> T y = initValue;
>
> alias x c;
> alias y r;
> }
Thanks
More information about the Digitalmars-d-learn
mailing list