计算机二级

下列关于保护成员的说法中,正确的是( )。A.保护的成员只能被类本身的成员函数及友元类的成员函数访问B.保护成员可以被程序中的任何代码访问C.保护的成员与私有成员是完全一样的D.保护成员访问权限和公有成员是一样的

题目

下列关于保护成员的说法中,正确的是( )。

A.保护的成员只能被类本身的成员函数及友元类的成员函数访问

B.保护成员可以被程序中的任何代码访问

C.保护的成员与私有成员是完全一样的

D.保护成员访问权限和公有成员是一样的

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列关于类定义的说法中,正确的是

A.类定义中包括数据成员和函数成员的声明

B.类成员的缺省访问权限是保护的

C.数据成员必须被声明为私有的

D.成员函数只能在类体外进行定义


正确答案:A
解析:本题考查的知识点是:类的定义。类中缺省的访问权限是私有的(private),所以选项B) 不正确:类的数据成员和函数成员的访问控制权限均可被声明为公有 (public)、私有(priate)和保护(protected)中的任意一种,所以选项C) 不正确;成员函数的实现即可以在类体内定义,也可以在类体外定义,所以选项D) 不正确。故本题应该选择A。

第2题:

下列关于类定义的叙述中,正确的是

A.类定义中包括数据成员和函数成员的声明

B.类成员的缺省访问权限是保护的

C.数据成员必须被声明为私有的

D.成员函数只能在类体外进行定义


正确答案:A
解析:在类的定义中,类的数据成员和成员函数可在类中声明,在类中或者类外定义均可。在类外定义成员函数时,要加上类名和域作用符,类名::为前缀,在类中的成员的默认访问权限为私有的。

第3题:

关于友元,下列说法错误的是

A.如果类A是类B的友元,那么类B也是类A的友元

B.如果函数fun()被说明为类A的友元,那么在fun()中可以访问类A的私有成员

C.友元关系不能被继承

D.如果类A是类B的友元,那么类A的所有成员函数都是类B的友元函数


正确答案:A
解析:本题考核友元类和友元函数。友元关系是单向的,并且只在两个类之间有效。即使类X是类Y的友元,类Y是否是类X的友元也要看类X中是否有相应的声明。即友元关系不具有交换性,所以A选项的说法是错误的。类的友元函数可以直接访问该类的所有成员;类A是类B的友元类,那么类A的所有成员函数都是类B的友元函数。

第4题:

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

A.友元函数是类的成员函数

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

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

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


正确答案:B
友元函数是指某些虽然不是类成员却能访问类的所有成员的函数,故友元函数不足类的成员函数。类成员的默认访问权限是私有的,类的成员函数¨r以是3种权限中的一种,静态数据成员可以为常成员。故本题答案为8。

第5题:

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

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

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

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

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


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

第6题:

下列关于派生类和基类的描述中,正确的是( )。

A.派生类成员函数只能访问基类的公有成员

B.派生类成员函数只能访问基类的公有和保护成员

C.派生类成员函数可以访问基类的所有成员

D.派生类对基类的默认继承方式是公有继承


正确答案:B
B。【解析】派生类成员函数不能访问基类的private成员,只能由基类的对象来访问。这才体现了C++的数据封装特性。

第7题:

一个类的友元函数或友元类可以访问该类的( )。

A.私有成员

B.所有成员

C.保护成员

D.公有成员


正确答案:B
解析:在C++中,如果想让类中的成员数据可以被其他函数访问,可以通过友元函数声明,来共享类中的资源。友元类函数对类的属性和方法的访问能力等同于类的成员函数。

第8题:

( 12 )下列关于类定义的说法中,正确的是

A )类定义中包括数据成员和函数成员的声明

B )类成员的缺省访问权限是保护的

C ) 数据成员必须被声明为私有的

D )成员函数只能在类体外进行定义


正确答案:A

第9题:

下面关于友元的说法中错误的是( )。

A.友元函数可以访问类中的所有数据成员

B.友元函数不可以在类内部定义

C.友元类的所有成员函数都是另一个类友元函数

D.友元函数必须声明在public区


正确答案:D
解析:友元提供了不同类或对象的成员函数之间、类的成员函数与一般函数之间进行数据共享的机制。类可以利用friend将一般函数、其他类成员函数或者其他类声明为友元。友元的声明可以放在类的任何一个区域。但是友元的实现不可以在类内部。

第10题:

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

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

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

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

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


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

更多相关问题