constructor inheritance
    Simen Kjaeraas 
    simen.kjaras at gmail.com
       
    Tue Mar  4 13:13:46 PST 2008
    
    
  
On Tue, 04 Mar 2008 21:59:35 +0100, Elwis <elwispl at gmail.com> wrote:
> Ary Borenszweig Wrote:
>
>> Elwis wrote:
>> > I might have described my problem unclearly.
>> >
>> > I has root class and it has some constructor. One of those just calls  
>> one of its methods. I'd like not to copy declaration of this  
>> constructor in all of its children.
>>
>> Do you mean you don't want to have to do this?
>>
>> class Parent {
>>
>>    this(int x, int y) {
>>      // some code
>>    }
>>
>> }
>>
>> class Child : Parent {
>>
>>    // I wish the compiler would add the this(int x, int y) constructor
>>    // automatically for me here
>>
>> }
>
> It doesn't work. Maybe it isn't supported by GDC?
It is not supported by D at all. At least not at the moment. Like I said,  
your best bet is templates.
Something like
template constructors()
{
	this()
	{
		// do stuff here
	}
	
	this(int x, int y)
	{
		// do stuff here
	}
}
class Parent
{
	mixin constructors;
}
class Child
{
	mixin constructors;
}
    
    
More information about the Digitalmars-d
mailing list