设有以下定义和程序:#include<iostream.h>classA1{public: void showl() { cout<<"classA1"<<end

题目
设有以下定义和程序:includeclassA1{public: void showl() { cout<<"classA1"<

设有以下定义和程序: #include <iostream.h> class A1 { public: void showl() { cout<<"class A1"<<end1; } }; Class A2 : public A1 { public: void show2() { cout<<"Class A2"<<end1; } }; Class A3 : protected A2 { public: void show3() { cout<<”Class A土”<<end1; } }; void main() { A1 obj1; A2 obj2; A3 obj3; } 则以下不合语法的调用语句是( )。

A.obj1.show1();

B.obj2.show1();

C.obj3.show1();

D.obj2.show2();

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

第1题:

以下程序的执行结果是______。 include class Sample { int n; public: Sample() {}

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

include<iostream.h>

class Sample

{

int n;

public:

Sample() {}

Sample (int i (n=i;)

void add (Sample &s1,Sample s2)

{

this->n=sl.n+=s2.n;

}

void disp() {cout<<" n="<< n <<end1:}

}

void main ()


正确答案:n=7 n=5 n=7
n=7 n=5 n=7

第2题:

若有以下程序: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。

第3题:

以下程序段的输出结果是[ ]。 include void ref(int &i); void main(){int val=1

以下程序段的输出结果是 [ ] 。

include<iostream.h>

void ref(int &i);

void main(){

int val=1;

cout<<“旧值:”<<val<<end1;

ref(val);

cout<<”新值:”<<val<<end1;

}

void ref(int &i){i=10;}


正确答案:旧值:1 新值:10
旧值:1 新值:10

第4题:

下面程序的结果是includeclass A{int a;public:A( ) :a(1) {}void showa ( ) {cout

下面程序的结果是 #include<iostream.h> class A { int a; public: A( ) :a(1) {} void showa ( ) {cout < < a;} }; class B { int a; public: B( ) :a(2) {} void showa( ) {cout < < a;} }; class C: public A, public B { t a; public: C( ) :a(3) {} void showa( ) {cout < < a;} }; void main( ) { C c; c.showa( ) ; }

A.1

B.2

C.3

D.程序有错误


正确答案:C
解析:类A、类B中都有showa( ) 函数,类C继承后再次重写showa( ) 函数就解决了继承的二义性,这时c. showa( ) 函数显示的就是类C中的showa ( ) 的值。

第5题:

下列程序的运行结果是______。 include class A { public: virtual void use( ) {cou

下列程序的运行结果是______。

include<iostream.h>

class A

{

public:

virtual void use( ) {cout<<"in A\n";}

};

class B:public A

{

public:

virtual void use( ) {cout<<"in B\n";}

};

class C:public B

{

public:

virtual void use( ){cout<<"in C\n";}

};

void main( )

{

A*obj;

bj=new C;

obj->use( );

delete obj;

}


正确答案:in C
in C 解析:本题考查虚函数和多态性。原本obj指向祖先类,随后被赋值,指向新的子孙类,则在使用use这个重载的虚函数时,根据当前指向可确定调用子孙的同名虚函数。

第6题:

有如下程序:includeusing namespace std;Class Base{public:Base(){cout<<“BB”;f()

有如下程序: #include<iostream.h> using namespace std; Class Base { public: Base(){cout<<“BB”;f();} void{(){cout<<“BF”;} }; class Derived:public Base { public: Derived(){cout<<“DD”;} void f(){cout<<“Df”;) }; int main

A.BBBfDD

B.BBDfDDDf

C.DD

D.DDBBBf


正确答案:A
解析: 本趣考查的是类的继承和派生。派生类执行构造函数的一般次序为;首先调用基类构造函数,然后调用成员对象的构造函数,最后是派生类构造函数中的内容。题目中定义派生类对象d时,先调用基类Base的构造函数,输出BBBf,然后调用派生类Derived的构造函数,输出DD。

第7题:

以下程序的输出结果 ______。 include void main() { int a=0; a+ =(a=8); cout<

以下程序的输出结果 ______。

include<iostream.h>

void main()

{

int a=0;

a+ =(a=8);

cout<<a;

}


正确答案:16
16

第8题:

以下程序中,错误的行为①include < iostream.h >②class A③{④public:⑤int n=2;⑥A(int val){cout <

以下程序中,错误的行为 ①#include < iostream.h > ②class A ③{ ④ public: ⑤ int n=2; ⑥ A(int val){cout << val<<end1;} ⑦ ~A( 0{}; ⑧}; ⑨void main( 0 ⑩{ (11) Aa(0); (12)

A.⑤

B.⑥

C.⑦

D.(11)


正确答案:A
解析:C++语言中规定在类体中不允许对所定义的数据成员进行初始化。

第9题:

有以下程序inclube class ClassOne{public: ClassOne(int v=O) { i=v;cout<

有以下程序 #inclube <iostream.h> class ClassOne { public: ClassOne(int v=O) { i=v;cout<<i;} void print(){ cout<<i<<end1;} }; class ClassTwo { public: ClassTwo(int v=O) { i=v;cout<<i;} void print(){ cout<<i<<end1;} private: ClassOne myObj; int i; }; void main() { ClassTwo obj(1); obj.print(); }

A.11

B.111

C.110

D.101


正确答案:A
解析:类ClassTwo中定义了成员对象myObj,所以在构造类ClassTwo的对象obj时会先调用类ClassOne的构造函数输出0,然后调用ClassTwo的构造函数输出1。主函数最后调用obj的成员函数print()输出1。所以最后结果为011。

第10题:

设有以下定义和程序:includeclass A1{public:void show1(){cout<<"class A1"<

设有以下定义和程序: #include<iostream.h> class A1 { public: void show1() { cout<<"class A1"<<end1; } }; class A2:public A1 { public: void show2() { cout<<"class A2"<<end1; } }; class A3:protected A2 { public: void show3() { cout<<"class A1"<<end1; } }; void main() { A1 obj1; A2 obj2; A3 obj3; } 则以下不合语法的调用语句是( )。

A.obj1.show1();

B.obj2.show1();

C.obj3.show1();

D.obj2.show2();


正确答案:C

更多相关问题