class Base
{
public:
virtual void print() const = 0;
};
class Test : public Base
{
public:
void print() {cout << "Test::print()" << endl;}
void print() const { cout << "Test::print() const" << endl; }
};
void main()
{
Base* pChild = new Test();
pChild->print();
Test* p2 = new Test();
p2->print();
}
为什么输出的是:
Test::print() const
Test::print()