Hi,

using System;

namespace Thing
{
        class MainClass
        {
                public static void Main (string[] args)
                {
                        Console.WriteLine ("Hello World!");
                }
        }
        
        
        public class Circle : Shape {
        
                public Circle () : this( new int[]{ 1,2 } ){
                }
        
                private Circle ( int[] pair ) : base ( pair[0], pair[1] ) {
                }
        
        }
        
        public class Shape {
                public Shape ( int mass, int id )
                {
        
                        Console.WriteLine( "mass {0} id {1}", mass, id  );
                }
        }
}


On Tue, 2010-11-16 at 18:35 +0000, Francisco M. Marzoa 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  -  [email protected]
> http://lists.ximian.com/mailman/listinfo/mono-list


_______________________________________________
Mono-list maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-list

Reply via email to