更多“非成员函数只有在声明为类的_____时才能访问这个类的所有private成员。 ”相关问题
  • 第1题:

    关于类的静态成员函数描述错误的是()

    A、在创建对象前不存在

    B、不能说明为虚函数

    C、不能直接访问非静态函数

    D、不是对象的成员


    参考答案:A

  • 第2题:

    ()只能访问静态成员变量,静态成员函数和类以外的函数和数据不能访问类中的非静态成员变量。

    A、静态函数

    B、虚函数

    C、构造函数

    D、静态成员函数


    参考答案:A

  • 第3题:

    非成员函数应该声明为类的【 】函数才能访问该类的私有成员。


    正确答案:友元
    友元 解析:友元函数不是当前类的成员函数,而是独立于当前类的外部函数(包括普通函数和其他类的成员函数),但它可以访问该类的所有对象的成员,包括私有成员、保护成员和公有成员。

  • 第4题:

    private访问属性限制对象的成员,可以在( )中访问。

    A.本类的成员函数

    B.main函数

    C.父类的成员函数

    D.子类的成员函数


    正确答案:A
    解析:私有成员只能被本类的成员函数或者友元函数访问。

  • 第5题:

    下列关于类的访问权限的描述中,( )是错误的。

    A.类中说明为公有的成员可以被程序中的任何代码访问

    B.类中说明为私有的成员只能被类的成员函数和说明为友元类的成员函数访问

    C.类中说明为保护的成员可以被该类的派生类的成员访问

    D.类的对象和类成员函数一样可以访问类的所有成员


    正确答案:D
    解析:本题考核类成员的访问权限。类成员有3类访问权限:公有(public)、私有(private)和保护(protected)。公有成员是类的对外表现,而私有成员和保护成员是类的内部实现。类的成员函数可以访问类的所有成员,没有任何限制。而类的对象对类的成员的访问是受成员访问控制符制约的。通过类的对象只能访问类的公有成员,不能访问类的保护成员和私有成员。由此可知,选项D的描述是错误的。

  • 第6题:

    下面关于友元函数描述正确的是 ______。

    A.友元函数能访问类的所有成员

    B.友元函数是类的成员

    C.只有函数才能声明为另一个的友元

    D.友元函数能访问类的私有成员


    正确答案:D

  • 第7题:

    非成员函数应声明为类的__________函数才能访问这个类的private成员。


    正确答案:
    友元 【解析】此题考查的是友元函数。一个类的私有成员和保护成员,只能由其本身的成员来访问,不能被其他函数访问。但是如果想让类中的数据成员可以被其他函数访问,可以通过友元函数声明来分享类中的数据资源。

  • 第8题:

    下列哪个命题为真()。

    • A、所有类都必须定义一个构造函数
    • B、构造函数必须有返回值
    • C、构造函数可以访问类的非静态成员
    • D、构造函数必须初始化类的所有数据成员

    正确答案:C

  • 第9题:

    声明为()的一个类成员,只有定义这些成员的类的方法能够访问。


    正确答案:private

  • 第10题:

    判断题
    友元函数是说明在类体内的非成员函数,它可以访问类中的所有成员。
    A

    B


    正确答案:
    解析: 暂无解析

  • 第11题:

    单选题
    下列有关类成员的叙述中,正确的是(  )。
    A

    友元函数是类的成员函数

    B

    类成员的默认访问权限是私有的

    C

    类成员函数必须声明为公有的

    D

    类的静态数据成员不能是常成员


    正确答案: B
    解析:
    A项错误,类的友元函数可以直接访问该类的所有成员,但它不是类的成员函数;B项正确,类的数据成员和成员函数的默认访问权限是私有的;C项错误,类成员函数的访问权限可以声明为公有、保护、私有;D项错误,静态数据成员的声明是使用关键字static,它可以是常成员。

  • 第12题:

    单选题
    在类定义的外部,可以被访问的成员有()
    A

    所有类成员

    B

    private或protected的类成员

    C

    public的类成员

    D

    public或private的类成员


    正确答案: B
    解析: 暂无解析

  • 第13题:

    在类定义的外部,可以被访问的成员有()。

    A. 所有类成员

    B. private的类成员

    C. public的类成员

    D. public或private的类成员


    正确答案:C

  • 第14题:

    非成员函数只有在声明为类的______才能防问这个类的所有private成员。


    正确答案:友元函数
    友元函数 解析:本题考核友元函数。C++规定,一个类的私有成员和保护成员,只能由其本身的成员来访问,不能被其他函数访问,这样形成了封装的概念,也保护了类本身的数据不致于受到破坏。但是,如果想让类中的成员数据可以被其他函数访问,可以通过友元函数声明,来分享类中的资源。类的友元函数可以直接访问该类的所有成员,包括私有成员。

  • 第15题:

    下列关于成员访问权限的描述中,不正确的是( )。

    A.公有数据成员和公有成员函数都可以被类对象直接处理

    B.类的私有数据成员只能被公有成员函数以及该类的任何友元类或友元函数访问

    C.只有类或派生类的成员函数和友元函数可以访问保护成员

    D.保护成员在派生类中可以被访问,而私有成员不可以


    正确答案:B
    解析:类的私有数据成员也可以被类成员函数访问,不管是公有、私有或是保护成员,所以选项B是错误的,其他选项是正确的。

  • 第16题:

    非成员函数只有在声明为类的【 】才能访问这个类的所有private成员。


    正确答案:友元函数
    友元函数

  • 第17题:

    类 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的公有成员


    正确答案:A
    解析:对象MyEmbed是类Contain的成员对象,通过对象MyEmbed不能访问其私有数据成员y,所以选项B是错误的。类Embed是类Contain的嵌套类,类Embed的成员函数不能直接访问类Contain的所有成员,所以选项C和D都是错误的。

  • 第18题:

    非成员函数必须声明为类的__________才能访问这个类的private成员。


    正确答案:
    友元函数 【解析】C 的友元提供了不同类或对象的成员函数之间、类的成员函数与一般函数之间数据共享的机制。一个类可以利用friend将一般函数、其他类成员函数或者其他类声明为友元。友元的声明可以放在类的任何一个区域。定义须在类外声明在公有私有部分均可。

  • 第19题:

    类中的非静态成员函数不能访问类的静态数据成员。


    正确答案:错误

  • 第20题:

    在类定义的外部,可以被访问的成员有()。

    • A、所有类成员
    • B、private或protected的类成员
    • C、public的类成员
    • D、public或private的类成员

    正确答案:C

  • 第21题:

    友元函数是说明在类体内的非成员函数,它可以访问类中的所有成员。


    正确答案:正确

  • 第22题:

    填空题
    声明为()的一个类成员,只有定义这些成员的类的方法能够访问。

    正确答案: private
    解析: 暂无解析

  • 第23题:

    单选题
    下列关于类的访问权限的描述中,错误的是()。
    A

    说明为公有的成员可以被程序中的任何代码访问

    B

    说明为私有的成员只能被类的成员和说明为友元类的成员函数访问

    C

    说明为保护的成员,除了能被本身的成员函数和说明为友元类的成员函数访问外,该类的派生类的成员也可以访问

    D

    类的所有成员都可以被程序中的任何代码访问


    正确答案: B
    解析: 暂无解析