[单选题]

包容类Contain和内嵌类Embed定义如下:includeclass Contain{private:int X;protect

包容类Contain和内嵌类Embed定义如下: #include<iostream.h> 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(

A.定义类Embed对象的语句是:Contain? Embed embed;

B.类Contain的成员函数Contain_Fun()中可以用MyEmbe D.y的方式访问类Embed的私有成员y

C.类Embed的成员函数Embed_Fun()中可以直接访问Contain的私有成员x

D.类Embed的成员函数Embed_Fun()中可以直接访问Contain的保护成员Z

参考答案与解析:

相关试题

类 Contain 的定义如下:class Contain{private: i

[单选题]类 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(); }; 下列对上面定义的描述中,正确的是( )。A.定义类Embed对象的语句是:Contain::Embed Myobject;B.类Con

  • 查看答案
  • 若类A和类B的定义如下:#includeclass A{int i*j;publ

    [单选题]若类A和类B的定义如下:includeclass A{int i*j;public:int geti(){return i;}};class若类A和类B的定义如下: #include<malloc.h> class A { int i*j; public: int geti() { return i; } }; class B: public A { int k; public: void make() { k=i*j; } ); 则上述定义中非法的表达式是( )。A.k=i*j;B.int k

  • 查看答案
  • 若类A和类B的定义如下:#includeclass A{int i,j;publ

    [单选题]若类A和类B的定义如下:includeclass A{int i,j;public:int geti(){return i;}};class若类A和类B的定义如下: #include<malloc.h> class A { int i,j; public: int geti() { return i; } }; class B:public A { int k; public: void make() { k=i*j; } }; 则上述定义中非法的表达式是( )。A.k=i*jB.int k;C

  • 查看答案
  • ( 12 )有如下类定义和变量定义:class A{publie:A () {d

    [单选题]( 12 )有如下类定义和变量定义:class A{publie:A. () {data=0;}~A () {}int GetData ( ) coast { return data;}void SetData ( int n ) {data=n;}private:int data;};ccnst A a;A. b;下列函数调用中错误的是A. ) a .GetData ( ) ;B. ) a .SetData ( 10 ) ;C. ) b .GetData ( ) ;D. ) b .SetDat

  • 查看答案
  • 有如下类定义和变量定义:class A{public:A( ){data=0;}

    [单选题]有如下类定义和变量定义: class A{ public: A( ){data=0;} ~A( ){ } int GetData( )const{return data;} void SetData(int n){data=n;} private: int data; }; const A a; A b; 下列函数调用中错误的是A.a.GetData( );B. a.SetData(10);C.b.GetData( );D.b.SetData(10);

  • 查看答案
  • 内部类是在一个类内嵌套定义的类。其特点描述错误的是()

    [单选题]内部类是在一个类内嵌套定义的类。其特点描述错误的是 ( )A.只能在定义它的类或程序段中或表达式内匿名使用,外部使用时必须给出类的全名B.可以使用它所在类的静态成员变量或实例成员变量,但不可以使用所在类中的局部变量C.可作为其他类的成员,而且可访问它所在类的成员D.除static内部类外,不能在类内声明static成员

  • 查看答案
  • 若类A和类B的定义如下 class A { int i,j; public: i

    [单选题]若类A和类B的定义如下class A{int i,j;public:int geti( ){return i;}};class B:public A{int k:public:void make( ){k=i*j;}};则上述定义中非法的语句是A.k=i*jB.int k;C.return i;D.void make()

  • 查看答案
  • 若类A和类B的定义如下:class A{ public: int i,j; vo

    [单选题]若类A和类B的定义如下: class A { public: int i,j; void get(); }; class B:A{ int i, j; protected; int k; public: void make(); }; void B: :make()(k=i*j;} 则其中 ______ 是非法的表达式。A.void get();B.int k;C.void make();D.k=i*j;

  • 查看答案
  • 若类A和类B的定义如下:class A{int i,j;public:void

    [单选题]若类A和类B的定义如下: class A { int i,j; public: void get(); //… } ; class B:A//默认为私有派生 { int k; public: void make(); //… }; void B::make() { k=i*j; } 则上述定义中, ( )是非法的表达式。A.void get();B.int k;C.void make();D.k=i*j;

  • 查看答案
  • 若类A和类B的定义如下:class A[ int i,j;public: int

    [单选题]若类A和类B的定义如下: class A [ int i,j; public: int geti() { return i; } }; class B:public A { int k; public: void make() { k=i*j; } }; 则上述定义中非法的表达式是A.k=i*jB.int k;C.retum i;D.void make()

  • 查看答案