Eliminate "new" for class object creation?

Jason House jason.james.house at gmail.com
Mon Oct 19 19:20:17 PDT 2009


Bill Baxter Wrote:

> On Mon, Oct 19, 2009 at 4:00 PM, Rainer Deyke <rainerd at eldwood.com> wrote:
> > Andrei Alexandrescu wrote:
> >> I hereby suggest we get rid of new for class object creation. What do
> >> you guys think?
> >
> > *applause*
> >
> > 'X(x)' and 'new X(x)' have distinct meanings in C++.  In Java/C#/D, the
> > 'new' is just line noise.
> 
> Well, I think "new Foo" is how you create a struct on the heap in D.
> So it's not exactly line noise.
> I don't mind getting rid of new, but there better be a good way to
> allocate structs on the heap.  And it better not require me to do an
> import just to be able to call the allocation function.
> 
> I like the Foo.new syntax myself.
> 
> --bb

Actually, new can also be used for creating classes on the stack... 
scope T t = new T();



More information about the Digitalmars-d mailing list