[Mono-list] Calling a constructor from within another's code
Francisco M. Marzoa
fmmarzoa at gmx.net
Tue Nov 16 14:16:03 EST 2010
Hi Stifu,
Thanks. Then I assume that there's no "official" manner of calling the
base constructor within the new class one appart from the ": base
(...)", isn't it?
Regards,
El 16/11/10 19:54, Stifu escribió:
> You could always move the base constructor code to a protected method and
> call it from the derived class constructor.
>
> public class C : B
> {
> public C ()
> {
> MyDataStruct data = GetDataFromTheDatabase ();
> this.InitStuff( data.a, data.b );
> }
> }
>
> *shrugs*
>
>
> fran wrote:
>
>> Hello,
>>
>> I know you can call a base class constructor using ": base" after the
>> new constructor signature. I.e.:
>>
>> public class A
>> {
>> int i;
>> public A (int _i)
>> {
>> i=_i;
>> }
>> }
>>
>> public class B : A
>> {
>> public B (int a, int b) : base (a+b) // Calls A constructor with _i
>> as _a+_b
>> {
>> }
>> }
>>
>> But what happens if you should made some more complicated that cannot be
>> done in that way???
>>
>> For example:
>>
>> public class C : B
>> {
>> public C ()
>> {
>> MyDataStruct data = GetDataFromTheDatabase ();
>> base ( data.a, data.b ); // This will not work, indeed, but
>> illustrates the idea...
>> }
>> }
>>
>> This is a question more focused on C# than in mono itself, but I hope
>> not to disturb no one doing it here since the list has not very high
>> trafic.
>>
>> Best regards,
>> _______________________________________________
>> Mono-list maillist - Mono-list at lists.ximian.com
>> http://lists.ximian.com/mailman/listinfo/mono-list
>>
>>
>>
>
More information about the Mono-list
mailing list