On Monday, 28 July 2025 at 18:02:45 UTC, H. S. Teoh wrote:
On Sun, Jul 27, 2025 at 05:02:35PM +0000, user1234 via
Digitalmars-d-learn wrote: [...]
Simply because because if OP writes
```
class Person{
string name;
this(string name){this.name=name;}
}
class Someone:Person{
}
void main(){
Someone x=new Someone("Bob");
}
```
then he gets rewarded with
> Error: class `Someone` cannot implicitly generate a default
> constructor when base class `Person` is missing a default
> constructor
Oh I see. So just write a forwarding ctor:
```
class Someone : Person {
this(string name) { super(name); }
...
}
```
Or use the mixin template I wrote in the other thread to
auto-generate forwarding ctors, if you have many subclasses
that need forwarding.
T
Thank you very much.
As "user1234" said, I just wanted to inheritance the constructor
method in the baseclass.
I have already tried your way to solve the problem,it could work.
But I still want to know why my code could raise an error.And
what's your mixin-template? Would you be so kind to show me this
template? I would be grateful if you can share it.