Why are parameter-less struct constructors not allowed?

I have a struct that doesn't need vtable or inheritance or anything, but I want to automatically call a method on it when it's created.

I also want to create this struct on the heap using operator "new".

Is there any way I can keep this struct as a struct (rather than a class) and still be able to allocate it and initialize it (including execution of my setup code) in a single statement, a la the following?
        
        MyStruct* ms = new MyStruct();

Maybe I'll have to introduce a dummy parameter in order to be include a struct constructor. You think so?

What is the rationale to D's not permitting parameter-less "default" struct constructors?

Reply via email to