From: Stefan Muehlebach <ia94mueh@htl-bw.ch>
Subject: Overlaying of methods.
Date: 1997/09/30
Date: 1997-09-30T00:00:00+00:00 [thread overview]
Message-ID: <34310F93.41C6@htl-bw.ch> (raw)
Hello.
I have a problem with objects and inherited methods. I have two classes,
declared in two seperated packages, on inherited from the other. Both
declare their own 'Init' procedures.
Part of the first package:
type XaCrowColumn is new XaContainer with private;
type XaCrowColumn_Ptr is access all XaCrowColumn'class;
procedure Init(o : access XaCrowColumn;
parent : access XaApplication'class;
orientation : ...;
num_cols : Integer := 1;
adjust_last : Boolean := True);
(XaApplication is the parent class for all classes in my library)
Part of the second package (which uses the one above):
type XaCradioBox is new XaCrowColumn with private;
type XaCradioBox_Ptr is access all XaCradioBox'class;
procedure Init(o : access XaCradioBox;
parent : access XaApplication'class;
orientation : ...;
num_cols : Integer := 1);
In the main program I declare a new object the following way:
myRadioBox: XaCradioBox_Ptr := new XaCradioBox;
BUT - and that is the frustrating point - if I write a statement like
this
Init(myRadioBox, aParent, anOrientation);
not the method in the second package is called but the one in the first!
Although the first parameter is of type XaCradioBox. Why?
I found out, that if I remove the defaults or write the same parameter
list for both 'Init'-procedures every thing is ok.
The question is also in which way does Ada look for an appropriate
method.
If someone could help me or at least verify my problem I would be very
happy.
next reply other threads:[~1997-09-30 0:00 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
1997-09-30 0:00 Stefan Muehlebach [this message]
1997-09-30 0:00 ` Overlaying of methods Tom Moran
1997-10-01 0:00 ` Stefan Muehlebach
1997-10-01 0:00 ` Robert A Duff
1997-10-07 0:00 ` Stefan M=?iso-8859-1?Q?=FChlebach
1997-10-07 0:00 ` Jon S Anthony
1997-10-01 0:00 ` Tom Moran
1997-09-30 0:00 ` Jon S Anthony
1997-10-01 0:00 ` Robert A Duff
1997-10-01 0:00 ` Stefan Muehlebach
1997-10-01 0:00 ` Jon S Anthony
1997-10-01 0:00 ` Tucker Taft
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox