class baseA{
public:
};
class extdA:public baseA{
public:
void fun(){
cout << "extdA"<<endl;
}
};
class extdB :public baseA{
public:
void fun(){
cout << "extdB" << endl;
}
baseA* change(int a){
}
};
int main(int argc, char* argv[])
{
baseA *ba = new extdA();
extdB *ea = (extdB*)ba;
ea->fun();
}
//out
extdB
class baseA{
public:
virtual void fun(){
cout << "baseA" << endl;
}
};
class extdA:public baseA{
public:
void fun(){
cout << "extdA"<<endl;
}
};
class extdB :public baseA{
public:
void fun(){
cout << "extdB" << endl;
}
baseA* change(int a){
}
};
int main(int argc, char* argv[])
{
baseA *ba = new extdA();
extdB *ea = (extdB*)ba;
ea->fun();
}
//out
extdA
不明所以,若有大神,還請指教