选择题   以下程序的执行结果为______。
    #include<iostream.h>
    class Sample
    {
    int n;
    public:
    Sample(int i){n=i;}
    operator++(){n++;}    //前缀重载运算符
    operator++(int){n+=2;}  //后缀重载运算符
    void disp() 
    {
    cout<<'n='<<n<<endl;
    }
    };
    void main()
    {
    Sample A(2),B(2);
    A++;
    ++B;
    A.disp();
    B.disp();
    }
 
【正确答案】 A
【答案解析】此题考查的是“++”运算符的重载。为了区分前缀和后缀运算符,规定:重载后缀运算符时必须多一个虚拟参数:int。本题中,A(2)首先给n赋值2,语句A++,调用的是后缀运算符重载语句,使得n加2变为4。B(2)首先给n赋值2,然后语句++B,调用前缀运算符重载函数,使得n加1。因此最终的输出结果是n=4 n=3。