From: "Adrian Hoe" <byhoe@greenlime.com>
Subject: Re: How to access parent class/object?
Date: 25 Mar 2005 00:08:51 -0800
Date: 2005-03-25T00:08:51-08:00 [thread overview]
Message-ID: <1111738131.705680.248430@o13g2000cwo.googlegroups.com> (raw)
In-Reply-To: <1111733830.271744.235420@f14g2000cwb.googlegroups.com>
Hi,
Sorry for polluting the bandwidth. I posted this thread without
thinking hard enough. Stupid me! :-)
For the benefits of newbies:
I use class wide type to over this problem.
package A is
type A_Object is tagged private;
type A_Object_Access is access all A_Object'Class;
...
end A;
package B is
type B_Object is new A_Object with private;
type B_Object_Access is access all B_Object'Class;
...
end B;
package C is
type C_Object is new B_Object with private;
type C_Object_Access is access all C_Object'Class;
...
end C;
package D is
type D_Object is new C_Object with private;
type D_Object_Access is access all D_Object'Class;
...
end D;
With the declaration:
My_D_Object : D.D_Object_Access;
Now, call the procedure with:
Process_C (C_Object_Access (My_D_Object));
This should solve the problem.
Cheers,
--
Adrian Hoe
Adrian Hoe wrote:
> Hi,
>
> I have the following codes (abbreviated):
>
> package A is
> type A_Object is tagged private;
> ...
> end A;
>
> package B is
> type B_Object is new A_Object with private;
> ...
> end B;
>
> package C is
> type C_Object is new B_Object with private;
> ...
> end C;
>
> package D is
> type D_Object is new C_Object with private;
> ...
> end D;
>
> Now, I have the following declaration:
>
> My_D_Object is D.D_Object;
>
> How can I reference the parent objects?
>
> procedure Process_C (C_Obj : access C_Object);
> procedure Process_D (D_Obj : access D_Object);
>
> How can I pass C_Object and D_Object into Process_C and Process_D
> respectively given only My_D_Object is D.D_Object?
>
> Thanks.
> --
> Adrian Hoe
prev parent reply other threads:[~2005-03-25 8:08 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-03-25 6:57 How to access parent class/object? Adrian Hoe
2005-03-25 7:48 ` Dmitry A. Kazakov
2005-03-25 8:10 ` Adrian Hoe
2005-03-25 8:08 ` Adrian Hoe
2005-03-25 8:08 ` Adrian Hoe [this message]
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox