下面这个程序的结果是 include class A { private: int a; public: void seta( ) ;下面这个程序的结果是#include<iostream.h>class A{private:int a;public:void seta( ) ;int geta( ) ;};void A: :seta( ){ a=1;}int A: :geta( ){ retum a;}class B{ private:int a;public:void seta( ) ;int get

题目
下面这个程序的结果是 include class A { private: int a; public: void seta( ) ;

下面这个程序的结果是

#include<iostream.h>

class A

{

private:

int a;

public:

void seta( ) ;int geta( ) ;};

void A: :seta( )

{ a=1;}

int A: :geta( )

{ retum a;}

class B

{ private:

int a;

public:

void seta( ) ;int geta( ) ;};

void B: :seta( )

{a=2;}

int B: :geta( )

{return a;}

class C: public A,public B

{ private:

int b;

public:

void display( ) ;};

void C: :display( )

{ int b=geta( ) ;

cout < < b;}

void main( )

{ C c;

c. seta( ) ;

c. display( ) ;}

A.1

B.2

C.随机输出1或2

D.程序有错


相似考题
参考答案和解析
正确答案:D
解析:在类A中有geta( ) 函数,在类B中也有geta( ) 函数,类C继承了类A和类B,这样就产生了二义性,所以程序会出错。
更多“下面这个程序的结果是 #include<iostream.h> class A { private: int a; public: void seta( ) ; ”相关问题
  • 第1题:

    下面程序的结果为includeint C;class A{ private: int a; static int b; public: A

    下面程序的结果为 #include<iostream.h> int C; class A { private: int a; static int b; public: A() {a=0;c=0;} void seta(){a++;} voidsetb(){b++;} voidsetc(){c++;} void display() {cout << a << " " << b << “ ” << c;} }; int A∷b=0; void main() { A a1,a2; a1.seta(); a1.setb(); a1.setc(); a2.seta(); a2.seth(); a2.setc(); a2.display(); }

    A.1 2 1

    B.1 2 2

    C.1 1 2

    D.2 2 2


    正确答案:B
    解析:C++语言中全局变量是任何函数都可以改变的量,静态变量的有效范围在定义它的类中,而普通的变量的有效性只在使用它的函数中,在本题中c为全局变量,b为静态变量,a为普通变量,b和c在类A的对象a1和a2中都自加l。所以b,c为2,a为1。

  • 第2题:

    下面这个程序的结果是includeclass A{private:int a;public:void seta( );int geta

    下面这个程序的结果是 #include<iostream.h> class A { private: int a; public: void seta( );int geta( );}; void A::seta( ) { a = 1;} int A::geta( ) {return a;} class

    A.1

    B.2

    C.随机输出1或2

    D.程序有错


    正确答案:D
    解析:在类A中有geta()函数,在类B中也有geta()函数,类C继承了类A和类B,这样就产生了二义性,所以程序会出错。

  • 第3题:

    下面程序的结果是 include class test{private: int num; publi

    下面程序的结果是 #include<iostream.h> class test{ private: int num; public: test( ); int getint( ) {return num;} ~test( );}; test::test( ) { num=0;} test::~test( ) { cout<<"Destructor is active"<<endl;} void

    A.Exiting main Destructor is active Destructor is active Destructor is active

    B.Exiting main Destructor is active Destructoris active

    C.Exiting main Destructoris active

    D.Exiting main


    正确答案:A
    解析:C++语言中析构函数是在程序退出不用该类的对象时进行调用。

  • 第4题:

    下列程序的运行结果是 includeclass Location{private:int X.Y;public:void init(i

    下列程序的运行结果是 #include<iostream.h> class Location{ private: int X.Y; public: void init(int=0,int=0); void valueX(int val){X=val;} int valueX( ){ return X;} void valueY

    A.5 0 6 4

    B.0 0 6 4

    C.5 0 6 2

    D.0 0 6 2


    正确答案:A
    解析:本题中有成员函数和它的重载函数,要注意它们的不同,在本题中先调用了init函数,初始化了X,Y,都为0,valueX(5);又将X变为5,所以输出5和0,然后初始化init(6,2),接着又valueY(4);将X,Y设为6和4,所以输出6和4。

  • 第5题:

    下面程序的结果为 include int c; class A { private: int a; static int b; publi

    下面程序的结果为

    #include<iostream.h>

    int c;

    class A

    {

    private:

    int a;

    static int b;

    public:

    A( ) {a=0;c=0;}

    void seta( ) {a++;}

    void setb( ) {b++;}

    void setc( ) {c++;}

    void display( ) {cout < < a < < " " < < b < < " " < < c;}

    };

    int A: :b=0;

    void main( )

    {

    A a1,a2;

    a1.seta( ) ;

    a1.setb( ) ;

    al .setc( ) ;

    a2.seta( ) ;

    a2.setb( ) ;

    a2.setc( ) ;

    a2.display( ) ;

    }

    A.1 2 1

    B.1 2 2

    C.1 1 2

    D.2 2 2


    正确答案:B
    解析:C++语言中全局变量是任何函数都可以改变的量,静态变量的有效范围在定义它的类中,而普通的变量的有效性只在使用它的函数中,在本题中c为全局变量,b为静态变量,a为普通变量,b和c在类A的对象a1和s2中都自加1。所以b、c为 2,a为1。