以下程序是正确的。 public class MyMai。()

题目
以下程序是正确的。 public class MyMai。()

此题为判断题(对,错)。

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列程序片段中,能通过编译的是

A.public abstract class Animal{ public void speak();}

B.public abstract class Animal{ public void speak(){}}

C.public class Animal{ public abstract void speak();}

D.public abstract class Animal{ public abstract void speak(){}}


正确答案:A

第2题:

以下程序的执行结果为______。include using namespace std; class base { public: vir

以下程序的执行结果为______。

include<iostream>

using namespace std;

class base

public:

virtual void who()

cout<<"base class"<<endl;

};

class derivel:public base

public:

void who()

cout<<"d


正确答案:base class derivel class derive2 class
base class derivel class derive2 class

第3题:

有以下程序: included using namespace std; class Base { public: Base( ) { x=0; }

有以下程序:

included<iostream>

using namespace std;

class Base

{

public:

Base( )

{

x=0;

}

int x;

};

class Derived1:virtual public Base

{

public:

Derived1( )

{

x=10;

}

};

class Derived2:virtual public Base

{

public:

Derived2( )

{

x=20;

}

};

class Derived: public Derived1,protected Derived2

{ };

int main( )

{

Derived obj;

cout<<obj. x<<endl;

return 0;

}

该程序运行后的输出结果是______。


正确答案:20
20 解析:本题考核虚基类。本题中,虽然Derived 1和Derived 2都是由共同的基类x派生而来的,但由于引入虚基类,使得它们分别对应基类的不同副本。这时数据成员x只存在一份拷贝,不论在类Derired 1中修改,还是在类Derived 2中修改,都是直接对这唯一拷贝进行操作。本题程序执行语句“Derived obj;”时,就会先调用虚基类Base的构造函数,使得x=0,然后执行类Derived 1的构造函数使得x=10,再执行类Derived 2的构造函数,使得x=20。最后输出x的值为20。

第4题:

若有以下程序: include using namespace std; class Base { public:void who(){ cout

若有以下程序:

include <iostream>

using namespace std;

class Base

{

public:

void who()

{

cout<<"class Base"<<end1;

}

};

class Derivedl : public Base

{

public:

void who()

{

cout<<"class Derivedl"<<end1;

}

};

class Derived2 : public Base

{

public:

void who()

{

cout<<"class Derived2"<<end1;

}

};

int main()

{

Base *p;

Derivedl obj1;

Derived2 obi2;

p=&obj 1;

p=&obj2;

p->who ( );

return 0;

}

则该程序运行后的输出结果是【 】。


正确答案:class Derived2
class Derived2 解析:本题考核对象指针的应用。主函数中定义了一个Base类对象指针p,然后逐步被赋值为obj1和obj2,最后通过对象指针p调用函数who(),也即调用Derived2中的函数who(),输出class Derived2。

第5题:

若有以下程序:include using namespace std;class Base{public: Base ( ) {x=0; } in

若有以下程序: #include <iostream> using namespace std; class Base { public: Base ( ) { x=0; } int x; }; class Derivedl : virtual public Base { public: Derivedl () { x=10; } }; class Derived2 : virtual public Base { public: Derived2 () { x=20; } }; class Derived : public Derivedl,protected Derived2{ }; int main ( ) { Derived obj; cout<<obj .x<<end1; return 0; } 该程序运行后的输出结果是 ( )。

A.20

B.30

C.10

D.0


正确答案:A
解析:本题中,虽然Derivedl和Derived2都是由共同的基类x派生而来的,但由于引入了虚基类,使得它们分别对应基类的不同副本。这时数据成员x只存在一份拷贝,不论在类Derived1修改,还是在类Derived2中修改,都是直接对这惟一拷贝进行操作。本题程序执行语句“Derivedobj”时,就会先调用虚基类Base的构造函数,使得x=0,然后执行类Derived1的构造函数,使得x=10,再执行类Derived2的构造函数,使得x=20。最后输出x的值为20。

第6题:

若有以下程序:include using namespace std;class Base{public: void who(){cout<<" B

若有以下程序:

include <iostream>

using namespace std;

class Base

{

public:

void who(){cout<<" Base"<<end1:}

};

class Derived1: public Base

{

public:

void who(){ cout<<"Derived"<<end1;}

};

int main()

{

Base *p;

Derived1 obj1;

p=&obj1;

p->who();

return 0;

}

则该程序运行后的输出结果是【 】。


正确答案:Derived
Derived 解析:本题考核对象指针的使用。题中基类Base对象指针p用派生类 Derived对象obj1来初始化,那么通过对象指针p调用的who函数版本为基类Base中定义的版本,所以程序输出Derived。

第7题:

有以下程序:include using namespace std; class Base { public: Base() { K=0; } int

有以下程序:

include<iostream>

using namespace std;

class Base

{

public:

Base()

{

K=0;

}

int x;

};

class Derivedl:virtual public Base

{

public:

Derivedl()

{

x=10;

}

};

class Derived2:virtua1 public Base


正确答案:20。
20。 解析: 本题中,虽然Derived1和Derived2由于引入了虚基类,使得它们分别对应基类的不同副本。这时数据成员x只存在一份拷贝,不论在类Derived1中修改,还是在类Derived2中修改,都是直接对这惟一拷贝进行操作。本题程序执行语句“Derived obi;”时,就会先调用虚基类Base的构造函数,使得x=0,然后执行类Derived1的构造函数使得x=10,再执行类Derived2的构造函数,使得x=20。最后输出x的值为20。

第8题:

以下程序的执行结果是【】。 include using namespace std; class base { public: virmal

以下程序的执行结果是【 】。

include<iostream>

using namespace std;

class base

{

public:

virmal void who(){cout<<"Base Class"<<endl;)

};

class Derivedl:public Base

{

public:

virtual void who(){cout<<"Derivedl Class"<<endl;}

};

class derived2:public Base

{

public:

virtual void who(){cout<<"Derived2 Class"<<endl;)

};

int main(int argc,char*argv[])

{

base obj1,*P;

deliVedl obj2;

derived2 obj3;

p=&obj1; p->who();

p=&obj2; p->who();

p=&obj3; p->who();

return 0;

}


正确答案:Base Class Derivedl Class Derived2 Class
Base Class Derivedl Class Derived2 Class

第9题:

以下程序的执行结果是______。 include class A{ int a: public: void seta(int x) {

以下程序的执行结果是______。

include<iostream.h>

class A

{

int a:

public:

void seta(int x) {a=x;}

void showa() {cout<<a<<end1;}

};

class B

{

int b;

public:

void setb(int x) {b=x;}

void showb(){cout<<b<<end1;}

};


正确答案:1 3
1 3

第10题:

以下程序的执行结果是______。 include class base { public: virtual void who(){c

以下程序的执行结果是______。

include<iostream.h>

class base

{

public:

virtual void who(){cout<<"base class"<<endl:}

};

class derrvel:public base

{

public:

void who(){cout<<"derivel class"<<endl:}

};

class derive2;public base

{

public:

void who() {cout<<"derive2 class"<<endl;}

};

void main()

{

base obj1,*P;

derive1 obj2;

derive2 obj3:

p=&obj1;

p->who();

p=&obj2:

p->who();

p=&obj3;

p->who();

}


正确答案:base class derivel class derive2 class
base class derivel class derive2 class

更多相关问题