有如下程序: #include using namespace std; class A{ public: A(int i=O):r1(i){) void printO{cout

admin2014-08-29  54

问题 有如下程序:
    #include
    using namespace std;
    class A{
    public:
    A(int i=O):r1(i){)
    void printO{cout<<’E’<    void print()const{cout<<’C’<    void print(int x){cout<<’P’<    private:
    int rl;
    }:
    Int main(){
    A al:
    const A a2(4);
    a1.print(2);
    a2.print();
    return O:
    }
    运行时的输出结果是(    )。

选项 A、P8一E4
B、P8一C16一
C、P0一E4.
D、P0一C16一

答案D

解析 在主函数中创建a1对象时,调用类A的默认构造函数,其数据成员r1的值等于0。当执行a1.print(2)语句时,调用带参数的print成员函数,所以输出结果为p0.,对象a2为常成员,所以其成员变量rl的值等于4,因为常对象只能调用常成员函数,所以当执行语句a2.print()语句时,输出结果为C14.。
转载请注明原文地址:https://kaotiyun.com/show/QWNp777K
0

最新回复(0)