> class A
> {
[quoted text clipped - 27 lines]
>
> A single line has to be included in this main funtion.
Sounds decidedly home-work-ish to me, but what the hey...
/If/ B.display() shadows A.display(), i.e. there's no overriding
involved - my C++ is a /little/ rusty ;-) - then you can do this
directly.
Simply tell ("up-cast") 'B' to behave as if it were an 'A'.
((A)b1).display();
However, if B.display() /overrides/ A.display() - don't think this is
the case, but just for completeness - then you're stuck.
Unless you expose an alternative method on 'B' that calls the base
implementation in 'A', then you can't access the base implementation in
A; and that's as it should be.
HTH,
Phill W.
Ben Voigt [C++ MVP] - 02 Aug 2007 18:36 GMT
>> class A
>> {
[quoted text clipped - 39 lines]
> However, if B.display() /overrides/ A.display() - don't think this is the
> case, but just for completeness - then you're stuck.
There's no "virtual", so no dynamic dispatch. Calling through a reference
to A will call the base implementation.
> Unless you expose an alternative method on 'B' that calls the base
> implementation in 'A', then you can't access the base implementation in A;
> and that's as it should be.
>
> HTH,
> Phill W.