有如下两个类定义: classXX{ private: doublexl; protected: doublex2; public: doublex3; }; claseYY:protectedXX{ private: doubleyl; protected: doubley2; public: doubley3; }; 在类YY中保护成员变量的个数是( )。A.1B.2C.3D.4

题目

有如下两个类定义: classXX{ private: doublexl; protected: doublex2; public: doublex3; }; claseYY:protectedXX{ private: doubleyl; protected: doubley2; public: doubley3; }; 在类YY中保护成员变量的个数是( )。

A.1

B.2

C.3

D.4


相似考题
更多“有如下两个类定义: classXX{ private: doublexl; protected: doublex2; public: doublex3; ”相关问题
  • 第1题:

    有如下两个类定义: classXX{ private: doublex1; protected: doublex2; public: doublex3; }; claseYY:protectedXX{ private: doubley1; protected; doubley2; public: doubley3; }; 在类YY中保护成员变量的个数是( )。

    A.1

    B.2

    C.3

    D.4


    正确答案:C
    C。【解析】派生类从基类保护继承classYY:pro-tectedXX时,基类的公有成员在派生类中变为保护成员,基类的保护成员在派生类中仍然是保护成员;本题中YY本身有一个保护成员y2,再加上基类XX的x2和x3,故选C。

  • 第2题:

    有如下程序:includeusingnamespacestd;classXX{protected: intk;public: XX(intn=5):

    有如下程序: #include <iostream> using namespace std; class XX { protected: int k; public: XX(int n=5):k(n){} ~XX() { cout<<"XX"; } virtual void f() const=0; }; inline void XX::f()

    A.28XX

    B.28YYXX

    C.-33XX

    D.-33XXYY


    正确答案:A
    解析:本题中,&p是一个对象指针,通过使用new运算符变成了指向派生类YY的对象指针。所以当建立并初始化对象指针&p时,程序将调用基类XX的构造函数,给私有数据成员k赋值5。然后调用派生类YY的常成员函数f(),输出值2和8。最后调用基类XX的析构函数输出XX。

  • 第3题:

    在类定义的外部,可以被访问的成员是

    A.所有类成员

    B.private或protected的类成员

    C.public的类成员

    D.public或private的类成员


    只能访问到声明为public的成员

  • 第4题:

    有如下两个类定义: class XX{ private: double xl; protected: double x2; public: double x3; }; class YY:protected XX{ private: double yl; protected: double y2; public: double y3; 在类YY中保护成员变量的个数是( )。

    A.1

    B.2

    C.3

    D.4


    正确答案:C
    本题考查保护继承中派生类对基类的访问属性,在受保护继承中,基类的公用成员和保护成员在派生类中成了保护成员,所以基类的成员x2、x3变成了保护成员,派生类中的y2也是保护成员,所以共有3个保护成员。本题答案为C、

  • 第5题:

    下列描述中,错误的是()。

    A.基类的protected成员在public派生类中仍然是protected成员

    B.基类的private成员在public派生类中是不可访问的

    C.基类public成员在private派生类中是private成员

    D.基类public成员在protected派生类中仍是public成员


    派生类中继承的基类成员的访问权限到派生类保持不变。