[c++]第三章概念题 | 类与对象

Posted Joe不看月亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[c++]第三章概念题 | 类与对象相关的知识,希望对你有一定的参考价值。

1.     关于类和对象不正确的说法是(  C  )A. 类是一种类型,它封装了数据和操作B. 对象是类的实例C. 一个类的对象只有一个D. 一个对象必属于某个类
2.下列有关类的说法不正确的是( D )A. 类是一种用户自定义的数据类型;B. 只有类中的成员函数或友元函数才能存取类中的私有成员;C. 在类中,如果不作特别说明,所有的数据均为私有类型;D.      在类中,如果不作特别说明,所有的成员函数均为公有类型;(私有)
3. 在类定义的外部,可以被访问的成员有( C )A. 所有类成员B. private或protected的类成员C. public的类成员 D. public或private的类成员
4. 以下叙述中不正确的是( C )A. 一个类的所有对象都有各自的数据成员,它们共享函数成员B. 一个类中可以有多个同名的成员函数C. 一个类中可以有多个构造函数、多个析构函数(析构只能有一个)D. 在一个类中可以声明另一个类的对象作为它的数据成员
5.声明一个类的对象时,系统自动调用( B )函数,撤消对象时,系统自动调用( C )函数A. 成员函数 B. 构造函数 C. 析构函数 D. 普通函数
6. 下面对构造函数的不正确描述是( B )A. 系统可以提供默认的构造函数B. 构造函数可以有参数,所以可以有返回值 (构造和析构都没有返回值)C. 构造函数可以重载 D. 构造函数可以设置默认参数
7. 下面对析构函数的正确描述是( C )A. 系统不能提供默认的析构函数 B. 析构函数必须由用户定义C. 析构函数没有参数 D. 析构函数可以设置默认参数
8.下面( B )项是对构造函数和析构函数的正确定义。A.void X::X(), void X::~X()B.X::X(参数), X::~X()C.X::X(参数), X::~X(参数)D.void X::X(参数), void X::~X(参数)
9.( C )的功能是对象进行初始化。A.析构函数 B. 数据成员 C.构造函数 D.静态成员函数
10.( C )不是析构函数的特征。A.  一个类中只能定义一个析构函数;B.  析构函数名与类名相同;C.  析构函数只是用来释放对象,所以析构函数是空函数;(不能用void修饰)D.  析构函数不指定数据类型,并且也没有参数;
11.有关构造函数的说法不正确的是( D )。A. 构造函数的名字和类的名字一样;B. 构造函数在定义类的对象时自动执行;C. 构造函数无任何函数类型;D. 构造函数有且仅有一个
12.( C )是构造函数的特征。A. 构造函数的函数名与类名不同;B. 一个类中只能定义一个构造函数;C. 构造函数可以设置缺省参数;D. 构造函数必须指定类型说明;
13. 以下有关析构函数的叙述不正确的是( B )A. 在一个类只能定义一个析构函数 B. 析构函数和构造函数一样可以有形参C. 析构函数不允许用返回值 D. 析构函数名前必须冠有符号“~”
14. 对类的构造函数和析构函数描述正确的是( A )。A. 构造函数可以重载,析构函数不能重载B. 构造函数不能重载,析构函数可以重载C. 构造函数可以重载,析构函数也可以重载D. 构造函数不能重载,析构函数也不能重载
15. 拷贝构造函数具有的下列特点中,( D )是错误的。A. 如果一个类中没有定义拷贝构造函数时,系统将自动生成一个默认的B. 拷贝构造函数只有一个参数,并且是该类对象的引用C. 拷贝构造函数是一种成员函数D. 拷贝构造函数的名字不能用类名
16.已知类A中一个成员函数说明为:void set(A &a); , 其中A &a的含意是( C )A. 指向类A的指针为a;B. 将a的地址值赋值给变量set;C. a是类A的对象引用,用来作函数set( )的形参;D. 变量A与a按位相与作为函数set( )的参数;
17、在下列说法中,( C )不会调用拷贝初始化构造函数。A. 当对象作为函数实参传递给函数形参时;B. 明确表示由一个对象初始化另一个对象时;C. 用赋值运算符”=”将一个对象赋给另一个同类对象时;D. 当对象作为函数返回值时
18. ( B )是不可以作为某类的成员的。A. 自身类对象的指针        B. 自身类的对象C. 自身类对象的引用        D. 另一个类的对象
19. 具有转换函数功能的构造函数,应该是( B )A. 不带参数的构造函数;B. 带有一个参数的构造函数;C. 带有两个以上参数的构造函数;D.      缺省构造函数转换构造函数基本形式定义:只接受一个一个参数的构造函数才能作为转换构造函数。对于这句话有两层含义:构造函数在声明时,就只设置了一个参数。例如:Base(int a);构造函数在声明时,设置了多个参数,但是其余参数都是有默认值的。例如:Base(int a,double b=12.0);以上两种形式都可以。
20. 假设OneClass为一个类,则该类的拷贝初始化构造函数的声明语句为( C  )A.OneClass(OneClass p); B. OneClass& (OneClass p);C. OneClass(OneClass & p);  D. OneClass (OneClass *p);
21. 下述静态数据成员的特性中,( D )是错误的。A. 说明静态数据成员时前面要加修饰符static;B. 静态数据成员要在类体外进行初始化;C. 在程序中引用公有静态数据成员时, 要在静态数据成员名前加<类名>和作用域运算符;D.      静态数据成员是个别对象所共用的;(所有对象共有)
22. 对静态成员的不正确描述是( C )A. 静态成员不属于对象,是类的共享成员 B. 静态数据成员要在类外定义和初始化 (类内定义,类外初始化)C. 调用静态成员函数时要通过类或对象激活,所以静态成员函数拥有this指针D. 非静态成员函数也可以操作静态数据成员
23. 关于静态成员的描述中,( B )是错误的。A. 静态成员可分为静态数据成员和静态成员函数B.  静态数据成员定义后必须在类体内进行初始化 (类外初始化)C. 静态数据成员初始化不使用其构造函数D. 静态数据成员函数中不能直接引用非静态成员
24. 以下关于静态成员变量的叙述不正确的是( D )A.静态成员变量为类的所有对象所公有B.静态成员变量可以在类内任何位置上声明C.静态成员变量的赋初值必须放在类外D.定义静态成员变量时必须赋初值
25. 定义静态成员函数的主要目的是( C )A.方便调用 B.有利于数据隐藏C.处理类的静态成员变量 D.便于继承
26. 以下叙述不正确的是(D)使用静态数据成员:A.可以节省内存空间 B.是为了解决数据共享问题C.可以直接用类名来引用       D.可以提高序运算速度
27. 关于this指针的说法错误的是( A )A. this指针必须显示说明 B. 当创建一个对象后,this指针就指向该对象C.  成员函数拥有this指针 D.  静态成员函数不拥有this指针
28. 设有定义:class person{ int num; char name[10];public: void init(int n, char *m); ...};person std[30];则以下叙述不正确的是( D )A. std是一个含有30个元素的对象数组B. std数组中的每一个元素都是person类的对象C. std数组中的每一个元素都有自己的私有变量num和nameD. std数组中的每一个元素都有各自的成员函数init (对象共用成员函数)
29. 下面对友元的错误描述是( D )A. 关键字friend用于声明友元 B. 一个类的成员函数可以是另一个类的友元C. 友元函数访问对象的成员不受访问特性影响 D. 友元函数通过this指针访问对象成员
30. 关于友元的描述中,( A )是错误的。A. 友元函数是成员函数,它被说明在类体内B. 友元函数可直接访问类中的私有成员C. 友元函数破坏封装性,使用时尽量少用D. 友元类中的所有成员函数都是友元函数
31. 下面对于友元函数描述正确的是( C  )。A.友元函数的实现必须在类的内部定义B.友元函数是类的成员C.友元函数破坏了类的封装性和隐藏性D.友元函数不能访问类的私有成员
32.下面的说法正确的是( D )A. 构造函数可以声明为const成员函数B. 构造函数可以声明为静态成员函数C. 构造函数可以声明为虚函数D. 构造函数可以声明为友元
33.已知:print( )函数是一个类的常成员函数, 它无返回值,下列表示中,( A )是正确的。A. void print( ) const B. const void print( )C. void const print( ) D. void print(const)
34.假定AA是一个类,“AA* abc()const;”是该类中一个成员函数的原型,若该函数返回this值,当用x.abc()调用该成员函数后,x的值(C )。A. 已经被改变B. 可能被改变C. 不变D. 受到函数调用的影响
35.对下列语句正确的描述是( C ) const int *x;//① int *const x;//②A. 语句①的含义是指针变量x不能更改B. 语句②的含义是指针变量x所指向的值不能更改C. 语句②的含义是指针变量x不能更改D.语句①和②是相同含义的不同定义方式


以上是关于[c++]第三章概念题 | 类与对象的主要内容,如果未能解决你的问题,请参考以下文章

C++从入门到入土第三篇:类与对象(上篇)

C++ ----类与对象(上)

C++类与对象第三篇:日期类的实现

初始c++——类与对象

C++类与对象(中)

C++学习47 文件的概念 文件流类与文件流对象 文件的打开与关闭