工学

单选题被非静态成员函数访问的类的数据成员()A可以是非静态数据成员或静态数据成员B不可能是类的静态数据成员C只能是类的非静态数据成员D只能是类的静态数据成员

题目
单选题
被非静态成员函数访问的类的数据成员()
A

 可以是非静态数据成员或静态数据成员

B

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

C

 只能是类的非静态数据成员

D

 只能是类的静态数据成员

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

第1题:

以下叙述中不正确的是

A.一个类的友元函数可以无条件的使用这个类的私有成员

B.静态成员函数可以直接访问非静态数据成员

C.不可以声明抽象类的对象,但可以声明抽象类的指针变量

D.静态数据成员为类的所有对象所共有


正确答案:B
解析:静态成员函数不能直接访问非静态数据成员。静态成员只有一份,供同一类的不同对象共享。友元函数对类的访问是完全开放的,从而增加了访问类的灵活性,但却破坏了类的封装性。

第2题:

下列关于this指针的说法,错误的是()。

A.静态成员函数中可以通过this指针访问非静态成员

B.在成员函数中对非静态数据成员的访问是通过this指针完成的

C.this指针指向当前正在操作的对象

D.this指针只存在于非静态成员函数中


正确答案:A

第3题:

●静态成员函数仅能访问 (33) 。静态数据成员的初始化必须在 (34) 。

(33) A.静态的数据成员

B.非静态的成员函数

C.非静态的数据成员

D.以上都不对

(34) A.类内

B.类外

C.在构造函数内

D.静态成员函数内


正确答案:A,B
【解析】静态数据成员的访问方式是:类名::静态数据成员名。
但是,不能直接访问私有的数据成员。
静态数据成员的初始化必须在类外,例如:
class A
{
static int i:
public:
//.....
};
静态数据成员i的初始化方法为:"int A::i=1;"。可见:它与全局变量的初始化的方法的不同之处在于,有类名和作用域分隔符指定i的范围。

第4题:

静态成员函数仅能访问(33)。静态数据成员的初始化必须在(34)。

A.静态的数据成员

B.非静态的成员函数

C.非静态的数据成员

D.以上都不对


正确答案:A

第5题:

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

A、静态函数

B、虚函数

C、构造函数

D、静态成员函数


参考答案:A

第6题:

关于静态成员,正确的说法是()。

A、静态成员函数可以直接访问该类中的非静态成员

B、非静态成员函数不能直接访问该类中的静态成员

C、静态数据成员同其它数据成员一样通过构造函数进行初始化

D、静态成员在任何对象创建之前就已经创建


参考答案:D

第7题:

在类的静态成员函数的实现体中,可以访问或调用()。

A、本类中的静态数据成员

B、本类中非静态的常量数据成员

C、本类中其它的静态成员函数

D、本类中非静态的成员函数


参考答案:AC

第8题:

关于静态数据成员的描述中正确的是( )。

A.类的静态数据成员不是类的所有对象共享的数据

B.类的静态数据成员不能被类的成员函数调用

C.类的静态数据成员不能被类的构造函数调用

D.类的静态数据成员必须进行初始化


正确答案:D
解析: C++类中的静态成员变量是该类中所有对象所共有的,它能够被类中的任何函数调用,所以选项A, B,C是错误的。而类的静态数据成员是必须要进行初始化才能使用的。

第9题:

类的静态成员与普通的对象成员之间有什么区别?()

A.类的所有对象共享一个静态成员

B.表态成员属于类,而普通成员属于对象

C.静态成员变量可以被类或普通成员访问到,但它们访问的静态成员变量实际不相同

D.静态成员函数只能访问静态成员变量,不能访问普通成员变量

E.静态成员变量就是值不会再变的成员变量


参考答案:A, B, C

第10题:

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

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

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

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

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


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

更多相关问题