Re: pure virtual functions and name injection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Pierre,

> Why should I inject the "foo" name from a into b ?

So that the compiler can find b::foo();

> The two functions have different prototypes, I thought that the compiler was
able to differentiate them.

Different prototypes, but the same name.  The name is what is causing the
error, not the rest of the signature.

To avoid this kind of situation, I recommend using a different method name
for the method with the different signature.

>Then it compiles but there is a *link* error !  Can somebody explain me what
happens ?

You have not defined the a::foo function anywhere.  So there is a link
error.

HTH,
--Eljay


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux