如果不使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问问从基类继承的成员。下列程序没有使用多态机制,其输出结果是【 】。include <iostream>using namespace std;class Base {public:void print ( ) {cout << 'B'; }};class Derived: public Base {public:void print ( ) {cout <<'D';}};int main( ){Derived* pd = new Derived( );Base* pb = pd;pb->print( );pd-print();delete pd;return 0;}

如果不使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问问从基类继承的成员。下列程序没有使用多态机制,其输出结果是【 】。

include <iostream>

using namespace std;

class Base {

public:

void print ( ) {cout << 'B'; }};

class Derived: public Base {

public:

void print ( ) {cout <<'D';}};

int main( )

{

Derived* pd = new Derived( );

Base* pb = pd;

pb->print( );

pd->print();

delete pd;

return 0;

}


相关考题:

下列有关继承和派生的叙述中,正确的是______。A.如果一个派生类私有继承其基类,则该派生类对象不能访问基类的保护成员B.派生类的成员函数可以访问基类的所有成员C.基类对象可以赋值给派生类对象D.如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类

如果不能使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基数继承的成员,下列程序没有使用多态机制,其输出结果是( ) 。#includeusing namespace std;class Base{public:Void print(){cout ‘B’;}};class Derived: public Base{publicvoid print(){cout ‘D’;}}int main(){Derived*pd=new Dreived);Base*pb=pd;pb-print();pd-print();delete pd;return 0;}

下列有关继承和派生的叙述中,正确的是A.如果一个派生类私有继承其基类,则该派生类对象不能访问基类的保护成员B.派生类的成员函数可以防问基类的所有成员C.基类对象可以赋值给派生类对象D.如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类

( 11 ) 如果不使用多态机制 , 那么通过基类的指针虽然可以指向派生类对象 , 但是只能访问从基类继承的成员。下列程序没有使用多态机制,其输出结果是 【 11 】 。#includeusing namespace std;class Base {public:void print ( ) { cout 'B'; } };class Derived : public Base {public:void print ( ) { cout 'D'; }};int main( ){Derived* pd = new Derived( );Base* pb = pd;pb-print( );pd-print( );delete pd;return 0;}

( 30 ) 如果不使用多态机制 , 那么通过基类的指针虽然可以指向派生类对象 , 但是只能访问从基类继承的成员,有如下程序,没有使用多态机制。#includeusing namespace std;class Base{int a,b;public:Bace ( int x ,int y ) { a=x; b=y;}Void show () { coutA ’ , ’ BENDL;}}clsaa Derived:public Base {int c ,d;public:Derived ( int x,int y,int z,int m ) :Base ( x,y ) {c=z; d=m;}Void show () { coutC ’ , ’ DENDL;}};int main (){Base B1 ( 50,50 ) ,*pb;Derived DI ( 10,20,30,40 ) ;Pb= & D1;Pb-show () ;Return 0;}运行时输出的结果是A ) 10 , 20B ) 30 , 40C ) 20 , 30D ) 50 , 50

( 23 )通过派生类的对象可直接访问其A )公有继承基类的公有成员B )公有继承基类的私有成员C )私有继承基类的公有成员D )私有继承基类的私有成员

以下关于派生机制的描述中,不正确的是A.派生类不仅可以继承基类的成员,也可以添加自己的成员B.设置protected成员是为派生类访问基类成员之用C.采用不同的继承方式,将限制派生类对基类成员的访问D.采用私有继承,派生类只能得到基类的公有成员

如果不使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基类继承的成员。有如下程序,没有使用多态机制。#include<iostream>using namespace std;class Base{ int a,b;public: Base(int x,int y){a=x;b=y;} void show(){cout<<a<<','<<b<<endl;}};class Derived:public Base{ int c,d;public: Derived(int x,int y,int z,int m):Base(x,y){c=z;d=w;} void show(){cout<<c<<','<<d<<endl;}};int main(){ Base B1(50,50),*pb; Derived D1(10,20,30,40); pb=D1; pb->show(); return 0;}运行时输出的结果是A.10,20B.30,40C.20,30D.50,50

在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是( )。A.派生类的对象可以赋给基类的对象B.派生类的对象可以初始化基类的引用C.派生类的对象可以直接访问基类中的成员D.派生类的对象的地址可以赋给指向基类的指针

下列有关继承和派生的叙述中,正确的是( )。A.如果一个派生类公有继承其基类,则该派生类对象可以访问基类的保护成员B.派生类的成员函数可以访问基类的所有成员C.基类对象可以赋值给派生类对象D.如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类

下面关于继承机制的描述中,不正确的是( )。A.派生类不仅可以继承基类的成员,也可以添加自己的成员B.设置protected成员是为派生类访问基类成员之用C.采用不同的继承方式,将限制派生类对基类成员的访问D.采用私有继承,派生类只能得到基类的公有成员

下列说法不正确的是( )。A.基类指针可以指向它的公有派生类的对象B.指向基类的对象的指针可以指向派生类的对象,因而可以访问派生类的对象的成员C.基类指针不能指向其私有派生类的对象D.指向派生类对象的指针不可以指向基类的对象

下列描述中错误的是( )。A.派生类的对象可以赋值给基类的对象B.基类的对象可以赋值给派生类的对象C.派生类对象可以初始化基类的引用D.派生类的对象地址可以赋值给指向基类的指针

当基类指针指向派生类对象时,会发生()A、错误,基类指针不能指向派生类对象B、基类指针可以指向派生类对象,但在此情况下只能调用基类自己定义的成员函数C、基类指针可以调用派生类的成员函数D、以上说法全部错误

关于私有继承,下列说法错误的是()。A、基类的公有成员和保护成员被继承后作为派生类的私有成员,派生类的其他成员可以直接访问他们。B、基类的公有成员和保护成员被继承后作为派生类的私有成员,派生类的其他成员不能直接访问他们。C、基类的私有成员,派生类的成员和派生类的对象都无法访问。D、派生类的对象无法访问基类的所有成员。

关于保护继承,下列说法错误的是()。A、保护继承的特点是基类的所有公用成员和保护成员都成为派生类的保护成员。B、派生类对象不能访问基类中的任何成员。C、派生类的对象可以访问基类的公有成员。D、保护继承的派生类和私有继承的派生类,对基类成员访问属性是相同的。

下面有关派生类的描述中,不正确的是()A、  派生类可以继承基类的构造函数B、  派生类可以隐藏和重载基类的成员C、  派生类不能访问基类的私有成员D、  派生类只能有一个直接基类

如果派生类的继承方式是protected的,则在main()函数中,可以通过派生类对象来访问基类的公有的成员。

当派生类指针指向基类对象时()A、可以直接调用基类的成员函数B、可以调用派生类对象的成员函数C、必须强制将派生类指针转换成基类指针才能调用基类的成员函数D、以上说法都不对

在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是()。A、派生类的对象可以直接访问基类的所有成员B、派生类的对象可以初始化基类的引用C、派生类的对象不可以直接访问基类中的私有成员D、派生类的对象的地址可以赋给指向基类的指针

单选题关于保护继承,下列说法错误的是()。A保护继承的特点是基类的所有公用成员和保护成员都成为派生类的保护成员。B派生类对象不能访问基类中的任何成员。C派生类的对象可以访问基类的公有成员。D保护继承的派生类和私有继承的派生类,对基类成员访问属性是相同的。

单选题下列关于类的继承描述中,正确的是()A派生类公有继承基类时,可以访问基类的所有数据成员,调用所有成员函数。B派生类也是基类,所以它们是等价的。C派生类对象不会建立基类的私有数据成员,所以不能访问基类的私有数据成员。D一个基类可以有多个派生类,一个派生类可以有多个基类。

判断题如果派生类的继承方式是protected的,则在main()函数中,可以通过派生类对象来访问基类的公有的成员。A对B错

单选题基类的指针与派生类指针,可以分别指向基类对象或派生类对象而形成4种情形。在这4种情形中,需要进行强制类型转换的是()A基类指针指向基类对象B基类指针指向派生类对象C派生类指针指向基类对象D派生类指针指向派生类对象

单选题下列关于派生类和基类的描述中,正确的是(  )。A派生类成员函数只能访问基类的公有成员B派生类成员函数只能访问基类的公有和保护成员C派生类成员函数可以访问基类的所有成员D派生类对基类的默认继承方式是公有继承

单选题当基类指针指向派生类对象时,会发生()A错误,基类指针不能指向派生类对象B基类指针可以指向派生类对象,但在此情况下只能调用基类自己定义的成员函数C基类指针可以调用派生类的成员函数D以上说法全部错误

单选题当基类指针指向派生类对象时,利用基类指针调用派生类中与基类同名但被派生类重写后的成员函数时,调用的是()A基类的成员函数B派生类的成员函数C不确定D先调用基类的,再调用派生类的