虛函數的實現問題
#include<iostream>
using namespace std;
class A
{
? ? ? ?public:
? ? ? ? ? ? ? virtual void funcl(){cout<<"A1";}
? ? ? ? ? ? ? void func2(){cout<<"A2";}
};
class B:public A
{
? ? ? ?public:
? ? ? ? ? ? ? void func1(){ cout<<"B1"; }
? ? ? ? ? ? ? void func2(){ cout<<"B2"; }
};
int main()
{
? ? ? ?A * p =new B;
? ? ? ?p ->funcl();
? ? ? ?p ->func2();
? ? ? ?return 0;
}
這個代碼的結果是?
2018-03-21
天殺的寫的代碼,考眼力的。A類中的是funl(字母l),B類中的是fun1(數字1),所以A,B類之間都沒有覆蓋函數,自然答案就是"A1A2”,拿這種題目出來考試的都要殺千刀,寫出這種代碼的更要殺千刀。
2017-11-15
B1A2