is there a cleaner way to new a static sized array?
grauzone
none at example.net
Thu Feb 25 09:45:57 PST 2010
BCS wrote:
> I need a function that works like the following:
>
>> T* New(T)() { return new T; }
>
> But that also works with static arrays:
>
>> auto i = New!(int)();
>> auto a = New!(int[27])();
>
> The cleanest solution I can think of is:
>
>> T* New(T)() { return (new T[1]).ptr; }
>
> but that seems ugly. Any ideas?
>
>
Does something like this work as expected?
T* New(T)() { static struct X { T x; } return &(new X).x }
(untested)
More information about the Digitalmars-d-learn
mailing list