大家分析一下这段代码
#include <iostream>
using namespace std;
class A
{
public:
A():a(1)
{}
virtual void print()
{
cout << "A print\n";
cout << a << endl;
}
virtual void test()
{
print();
}
private:
int a;
};
class B:public A
{
public:
B():a(2)
{}
virtual void print()
{
cout << "B print\n";
cout << a << endl;
}
virtual void test()
{
print();
A::test();
A::print();
}
private:
int a;
};
int main()
{
B b;
b.test();
}