有如下程序: #include using namespace std; class MyClass{ public: MyClass(int x):val(x){} void Print()

admin2015-09-14  32

问题 有如下程序:
    #include
    using namespace std;
    class MyClass{
    public:
        MyClass(int x):val(x){}
        void Print()const{cout<<"const:va1"="<        void Print(){cout<<"va1="<    private:
        int va1;
    };
    int main(){
        const MyClass obj 1(10);
        MyClass obj2(20);
        obj1.Print();
        obj2.Print();
        retum 0;
    }
    程序的输出结果是(    )。

选项 A、va1=10    const:va1=20
B、const:va1=10    const:va1=20
C、const:va1=10    va1=20
D、va1=10    va1=20

答案C

解析 此题考查的是常成员函数的重载。常成员函数是使用const关键字说明的函数。const关键字可用于区分重载函数。此时,常对象调用常成员函数,一般对象调用一般成员函数;题目中的Print()就是通过const重载的两个成员函数,主函数中声明的obj1是常对象,obj2是一般对象。故输出结果是const∷va1=10 va1=20。
转载请注明原文地址:https://kaotiyun.com/show/8qNp777K
0

最新回复(0)