This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Question about inheritance
- To: egcs at cygnus dot com
- Subject: Question about inheritance
- From: "Peter V. Evans" <pevans at enteract dot com>
- Date: Mon, 3 Aug 1998 15:54:55 -0500 (CDT)
Hi,
I'm developing a program which makes heavy usage of inheritance. Let me
give the example first:
class foo
{
public:
typedef int hi;
void doit (void)
{
if (sizeof(hi) == sizeof(int))
puts("int");
else
puts("something else");
}
};
class stuff : public foo
{
public:
typedef double hi;
};
int
main (void)
{
stuff s;
s.doit(); // Prints out "int", not "something else"
return 0;
}
---
The function doit, thus, does not see the derived class' "hi", only the
parent class. I couldn't say if this is the correct behaviour, since I
don't know C++ as well as most others, but a better question would be,
how to get doit to somehow see the derived class "hi" instead of the
parent class "hi"?
Thanks for any help you can provide.
Peter