the compiler can only guess the function u r calling by its
arguments(not even from return type)
so when you call derived::f(char) it looks for a function something
like derived_f_char(in its symbol table)
in essence there will be 2 vtable entries for f(char) and f(double)

i think this behavior is very logical in c++.

--- In [email protected], Knowledge Seeker
<[EMAIL PROTECTED]> wrote:
>
> Please look into
> 
> http://www.parashift.com/c++-faq-lite/strange-inheritance.html#faq-23.9
> 
> Could someone describe in more detail why the function of the base
class 
> is hidden.
> 
> I think  name mangling  should not impose such a restriction, is it 
> deliberately made so in C++ language?
> 
> 
> Cordially,
> KnowledgeSeeker
>


Reply via email to