以下程序的执行结果是【】。include class B{public:B(){}B(int i.int j); void printb以下程序的执行结果是【 】。include <iostream.h>class B{public:B(){}B(int i.int j);void printb();private:int a,b;};class A{public:A() { }A(int i,int j);void printa();private:B c;};A:: A(int i,int j):c(

题目
以下程序的执行结果是【】。include class B{public:B(){}B(int i.int j); void printb

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

include <iostream.h>

class B

{

public:

B(){}

B(int i.int j);

void printb();

private:

int a,b;

};

class A

{

public:

A() { }

A(int i,int j);

void printa();

private:

B c;

};

A:: A(int i,int j):c(i, j)

{ }

void A:: pfinta()

{

c. printb();

}

B::B(int i,int j)

{

a=i;

b=j;

}

void B::printb()

{

cout<<"a="<<a<<",b="<<b<<end1;

}

void main()

{

A m(7,9);

m. printa();

}


相似考题
更多“以下程序的执行结果是【】。include <iostream.h>class B{public:B(){}B(int i.int j); void printb ”相关问题
  • 第1题:

    下列程序的运行结果是______。include class Base { public: void f(int x){cout<<“B

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

    include<iostream.h>

    class Base

    {

    public:

    void f(int x){cout<<“Base:”<<x<<endl;}

    );

    class Derived:public Base

    {

    public:

    void f(char*str){cout<<“Derived:”<<str<<endl;}

    };

    void main(void)

    {

    Base*pd=ne


    正确答案:Base:97。
    Base:97。 解析: 本题主要考查两个知识点,一是基类指针可以指向派生类对象,并可以访问派生类的所有成员。二是在函数重载中进行隐式类型转换。如pd->f(‘a’);系统到底调用哪个重载函数呢?实参既不是派生类中的形参,也不是基类中f函数的形参类型。此时系统根据就近原则和从高优先级到低优先级的规则尝试隐式转换。单字符更接近整数,故调用的是基类的f函数。

  • 第2题:

    以下程序的执行结果是______。 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

  • 第3题:

    以下程序的执行结果是()。includeclass TestClass2{public:TestClass2 (){};TestCla

    以下程序的执行结果是( )。 #include<iostream.h> class TestClass2 { public: TestClass2 (){}; TestClass2(int i,int j); void printb(); private: int a,b; }; class TestClass1 { public: TestClass1(){} TestClass1(int i,int j); void printa(); private: TestClass2 c; }; TestClassl::TestClass1(int i,int j):c(i,j) {} void TestClass1::printa() { c.printb(); } TestClass2::TestClass2(int i,int j) { a=i: b=j; } void TestClass2::printb() { cout<<"a="<<a<<","<<"b="<<b<<endl; } void main() { TestClass1 m(7,9); m.prints(); }

    A.a=7,b=8

    B.a=8,b=7

    C.a=7,b=9

    D.a=8,b=9


    正确答案:C

  • 第4题:

    以下程序的执行结果是______。 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

  • 第5题:

    分析以下程序的执行结果【】。include class S{ int A[10]; public: int &operato

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

    include <iostream. h>

    class S{

    int A[10];

    public:

    int &operator () (int);

    };

    int &S: :operator() (int x) {

    return A[x];

    }

    void main() {

    S a;

    int i,j;

    for (i=0; i<10; i++)

    a(i)=i*2;

    for (i=0; i<10; i++)

    cout<<a(i)<<" ";

    cout<<end1; }


    正确答案:0 2 4 6 8 10 12 14 16 18
    0 2 4 6 8 10 12 14 16 18