类 Contain 的定义如下: class Contain { private: int x; protected: int z; public: class Embed {

admin2010-03-29  27

问题 类 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、类Contain的成员函数Contain_Fun()中可以访问对象MyEmbed的私有成员y
C、类Embed的成员函数Embed_Fun()中可以直接访问类Contain的所有成员
D、类Embed的成员函数Embed_Fun()中只能直接访问类Contain的公有成员

答案1

解析 对象MyEmbed是类Contain的成员对象,通过对象MyEmbed不能访问其私有数据成员y,所以选项B是错误的。 类Embed是类Contain的嵌套类,类Embed的成员函数不能直接访问类Contain的所有成员,所以选项C和D都是错误的。
转载请注明原文地址:https://jikaoti.com/ti/qxW0FFFM
0

最新回复(0)