Name hiding and overriding 涉及问题是:当基类和派生类之间存在相同名字的时候,怎么区别开来使用。
#include <iostream>
using namespace std ;
class BC {
public:
void h( double ) { cout <<"BC::h()"<< endl; }
};
class DC : public BC {
public:
void h( char[] ) { cout <<"DC::h()"<< endl; }
};
int main() {
DC d;
d.h( "Boffo!" );
//d.h( 707.7 ); //error:no matching function for call...
d.BC::h( 707.7 );
return 0;
}