首页/ 题库 / [单选题]有如下两个类定义: class XX{ 的答案

有如下两个类定义: 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中保护成员变量的个数是( )。

单选题
2022-01-01 08:38
A、1
B、2
C、3
D、4
查看答案

正确答案
C

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

标签:
感兴趣题目
有如下类定义: class Test { private int x; public int y; public void setX (int m) {x=m;} public int getX( ) {return x;} }现用Test t=new Text();生成一个对象t,则如下语句中,错误的是( )。
有如下类定义: class Point{ private: static int how_many; }; ___________how_many=0; 要初始化Point类的静态成员how_many,下画线处应填入的内容是( )。
有如下类定义: class Point{ private: static int how_many; }; ______how_many=0; 要初始化Point类的静态成员how_many,在下画线处应填入的内容是
在下面的定义语句中,画线处应填入的内容是 class Fred{ public: void print( ){cout<<data<<endl;} void setData(double D) {data=d;} static int count; private: double data; }; ______count=0;//静态数据成员的定义
有以下类定义 class MyClass { private: int id; Char gender; Char*phone; public: MyClass():id(0),gender(‘#’),phone(NULL){} MyClass(int no,charge=’#’,char*ph=NULL) {id=no;gender=ge;phone=ph;} ); 下列类对象定义语句中错误的是( )。
类MyClass的定义如下: class MyClass { public: MyClass(){value=0;} SetVariable(int i){value=i;) private: int value; }; 则对下列语句序列正确的描述是( )。
类MyClass的定义如下: class MyClass { public: MyClass(){value=0;} SetVariable(int i){value=i;} private: int value; }; 则对下列语句序列正确的描述是( )。
有如下程序: #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()
有如下程序: #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()const { cout<<k+3; }; class YY:public XX { public: ~YY() { cout<<”YY”; } void f()const { cout<<k-3; XX::f(); } }; int main() { XX &p=*new YY; P.f(); delete &p; return 0: } 执行上面的程序将输出( )。
下面类的定义,有( )处错误。 class MyClass { public: void MyClass(); ~MyClass(int Value); private: int i=0; };
下面类的定义,有( )处错误。 class MyClass {public: void MyClass(); ~MyClass(int value); private: int i=0;};
下列类的定义中,有( )处语法错误。 class Base { public: Base(){} Base(int i) { data=i; } private: int data; }; class Derive : public Base { public: Derive() : Base(O) {} Derive (int x) { d=x; } void setvalue(int i) { data=i; } private: int d; };
相关题目
有如下程序: #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()const { cout<<k+3; }; class YY:public XX { public: ~YY() { cout<<”YY”; } void f()const { cout<<k-3; XX::f(); } }; int main() { XX &p=*new YY; P.f(); delete &p; return 0: } 执行上面的程序将输出( )。
有如下程序: #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()
类 Contain 的定义如下: class Contain { private: int x; protected: int z; public: class Embed { private: int y; public: Embed ( ) { y=100; } int Embed_Fun(); }MyEmbed; int Contain_Fun(); }; 下列对上面定义的描述中,正确的是( )。
在声明派生类时,如果不显示地给出继承方式,缺省的类继承方式是私有继承private。已知有如下类定义: class TestClass{ protected: void fun(){} }; class TestClass1:TestClass{}; 则TestClass类中的成员函数fun(),TestClass1类中的访问权限是( )。
在类定义中,说明成员的访问权限的public、private和protected三个关键字的作用是什么?请分别简述之。
在定义类的基本命令DEFINE CLASS中,如果引用了关键字PROTECTED,就可以保护类定义中相应的对象、属性和方法程序。访问由该关键字说明的属性、方法程序和对象的方法是______。
在下面的类定义中,横线处应填入的内容是( )。class Fred{ public: void print() {cout<<data<<end1; void setData(double d)( data=d; static int count; private: double data;};_______________________ count=O; //静态数据成员的定义
在下面的类定义中,横线处应填入的内容是( )。 class Fred { public: void print(){cout<<data<<end1;} void setData(double d}{data=d;} static int count; private: double data; }; ______count=0; //静态数据成员的定义
在下面的类定义中,横线处应填入的内容是 class Fred { public: void print(){cout<<data<<endl;} void setData(double d)(data=d;} static int count; private: double data; }; count=0; //静态数据成员的定义
有如下运算重载函数定义: Double operator+(int i,int k){return double(i+k);} 但定义有错误,对这个错误的最准确的描述是
有如下的运算重载函数定义:Double operator+(int i, int k){return double(i+k);}但定义有错误,对这个错误的最准确的描述是______。
有如下两个类定义: classXX{ private: doublexl; protected: doublex2; public: doublex3; }; claseYY:protectedXX{ private: doubleyl; protected: doubley2; public: doubley3; }; 在类YY中保护成员变量的个数是( )。
设有基类定义:class Cbase{ private:int a;protected. int b;public:int c;};派生类采用何种继承方式可以使成员变量b成为自己的私有成员( )。
设有基类定义: class Cbase { private: int a; protected: int b; public: int c; }; 派生类采用何种继承方式可以使成员变量b成为自己的私有成员
有如下类声明: class TestClass int i; private:int j; protected:int k; public:int m,n; 其中,私有成员的数量为( )。
若有如下类定义: class B{ void fun1( ){} private: double varl; public: void fun2( ){ } }; class D:public B{ private: void fun3( ){ } }; 已知obj是类D的对象,下列语句中不违反类成员访问控制权限的是
有如下两个类定义: 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中保护成员变量的个数是( )。
有如下两个类定义: classXX{ private: doublex1; protected: doublex2; public: doublex3; }; claseYY:protectedXX{ private: doubley1; protected; doubley2; public: doubley3; }; 在类YY中保护成员变量的个数是( )。
有如下两个类定义: class XX{ private: double X1; protected: double x2; public: doublex3; ); clase YY:protected XX{ private: doubley1; protected: doubley2; public: double y3; }; 在类YY中保护成员变量的个数是( )。
试比较类的三种继承方式public,protected,private之间的差别。
广告位招租WX:84302438

免费的网站请分享给朋友吧