给出下面程序的输出结果。
    #include<iostream>
    using naillespace std;
    class Base
    {private:
    int a;
    public:
    void set(int x){a=x;}
    void show(){cout<<"a="<<a<<", ";}
    };
    class Sample: public Base
    {private:
    int b;
    public:
    void set(int x=0){Base::set(x); b=x+10;}
    void set(int x, int y){Base::set(x); b=y;}
    void show(){Base::show(); cout<<"b="<<b<<endl;}
    };
    void main()
    {Sample b;
    Sample.set(10); Sample.show()
    Sample.set(30, 50); Sample.show()
    }
 
【正确答案】a=10,b=20
   A=30,b=50
【答案解析】 b.set(10)赋值a=x=10,b=x+10=20。b.set(30,50)调用派生类B的set()函数,给ab赋值并输出。