Do classes require explicit constructors?
Brother Bill
brotherbill at mail.com
Sat Feb 14 15:50:46 UTC 2026
On Saturday, 14 February 2026 at 15:45:20 UTC, Richard (Rikki)
Andrew Cattermole wrote:
> On 15/02/2026 4:42 AM, Brother Bill wrote:
>> Is this expected behavior, that is, we always need to create
>> our constructors, no free constructor is built for us by the D
>> compiler?
>
> Yes currently.
>
>> If so, this is a clear departure from C# and Eiffel, where one
>> gets a free constructor if no explicitly declared constructors.
>
> D's classes were based off of Java's.
>
> I want some changes to them, constructors also don't inherit.
Eiffel may be the only language that supports inheriting
constructers.
In Eiffel, a constructor is just another method, that is marked
as a constructor in "create" clause. As all methods are
inheritable by default in Eiffel, constructors can be inherited
there.
>
> They are massive pain for exceptions.
Why are they a massive pain? Please explain.
More information about the Digitalmars-d-learn
mailing list