选择题: 1下列的各函数中,c不是类的成员函数 a.构造函数 b.析构函数 c.友元函数 d.复制构造函数 2.d不是构造函数的特征 a.构造函数的函数名与类名相同 b.构造函数可以重载 c.构造函数可以设置缺省参数 d.构造函数必须指定类型说明 3.a是析构函数的特征。 a.一个类中只能定义一个析构函数 b.析构函数在对象创建时调用 c.析构函数的定义只能在类体内 d.析构函数可以有一个或多个参数 C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 1 1 下列的各函数中, ___不是类的成员函数. a. 构造函数 b. 析构函数 c. 友元函数 d. 复制构造函数 2.___不是构造函数的特征。 a. 构造函数的函数名与类名相同 b. 构造函数可以重载 c. 构造函数可以设置缺省参数 d. 构造函数必须指定类型说明 3. ___是析构函数的特征。 a. 一个类中只能定义一个析构函数 b. 析构函数在对象创建时调用 c. 析构函数的定义只能在类体内 d. 析构函数可以有一个或多个参数 一、选择题: c d a
4.关于成员函数特征的下述描述中,a是错误的。 a.成员函数一定是内联函数 b.成员函数可以重载 c.成员函数可以设置参数的缺省值 d.成员函数可以是静态的 5.复制构造函数的形参是 a某个对象名 b某个对象的成员名 c某个对象的引用名 d某个对象的指针名 C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 2 4.关于成员函数特征的下述描述中,___是错误的。 a.成员函数一定是内联函数 b.成员函数可以重载 c.成员函数可以设置参数的缺省值 d.成员函数可以是静态的 5.复制构造函数的形参是___。 a.某个对象名 b.某个对象的成员名 c.某个对象的引用名 d.某个对象的指针名 a c
6.如果编程者没有显式定义构造函数(包括复制构造函数), C+编译器就d。 a出现编译错误 b没有构造函数 必须显示定义 d隐式定义缺省的构造函数 7.静态成员函数仅能访问a。 a静态的数据成员 b非静态的成员函数 c非静态的数据成员 d以上都不对 C++程序设计课件设计制作:徐龙琴 3
C++程序设计课件 设计制作:徐龙琴 3 6.如果编程者没有显式定义构造函数(包括复制构造函数), C++编译器就___。 a.出现编译错误 b.没有构造函数 c.必须显示定义 d.隐式定义缺省的构造函数 7.静态成员函数仅能访问___。 a.静态的数据成员 b.非静态的成员函数 c.非静态的数据成员 d.以上都不对 d a
8.静态数据成员的初始化必须在b。 a类内 b类外 c在构造函数内 d静态成员函数内 9.友元作用a。 a提高程序的运用效率 b加强类的封装性 c实现数据的隐藏性 d增加成员函数的种类 C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 4 8.静态数据成员的初始化必须在___。 a.类内 b.类外 c.在构造函数内 d.静态成员函数内 9.友元作用___。 a.提高程序的运用效率 b.加强类的封装性 c.实现数据的隐藏性 d.增加成员函数的种类 b a
10.下面关于类和对象的说法不正确的是b A)对象是类的一个实例 B)一个类只能有一个对象 C类只有一个名字而对象名可以任意多个名字 D)类和对象的关系与数据类型和变量的关系相似 11.下面关于类的说法不正确的是 A)类是一种用户自定义数据类型 B)只有类的成员才能访问类的私有成员 C)在类中,如果不作特别声明,所有成员均为公有成员 D)在类中,如果不作特别声明,所有成员均为私有成员 12要使类中的某个成员可被自由访问,应使用的访问权限为d A) private B) protected C)publish D) public C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 5 10.下面关于类和对象的说法不正确的是 A)对象是类的一个实例 B)一个类只能有一个对象 C)类只有一个名字而对象名可以任意多个名字 D)类和对象的关系与数据类型和变量的关系相似 11.下面关于类的说法不正确的是 A)类是一种用户自定义数据类型 B)只有类的成员才能访问类的私有成员 C)在类中,如果不作特别声明,所有成员均为公有成员 D)在类中,如果不作特别声明,所有成员均为私有成员 12要使类中的某个成员可被自由访问,应使用的访问权限为 A) private B) protected C) publish D) public b c d
13.下列描述正确的是a A)构造函数可以重载,析构函数不能重载 B)构造函数不能重载,析构函数可以重载 C)构造函数可以重载,析构函数可以重载 D)构造函数不能重载,析构函数不能重载 14假定一个类是 Student,那么该类的拷贝构造函数是c A)Student( Student s B)Student Student*s C)Student( Student &s); D)Student*( Student s 15有关构造函数的说法不正确的是b A)构造函数的名字和类名是一样的B类中只有一个构造函数 C)构造函数可以有多个参数D)构造函数无任何函数类型 C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 6 13.下列描述正确的是 A) 构造函数可以重载,析构函数不能重载 B) 构造函数不能重载,析构函数可以重载 C) 构造函数可以重载,析构函数可以重载 D) 构造函数不能重载,析构函数不能重载 14假定一个类是Student,那么该类的拷贝构造函数是 A)Student( Student s ); B)Student( Student *s ); C)Student( Student &s ); D)Student*( Student s ); 15 有关构造函数的说法不正确的是 A)构造函数的名字和类名是一样的 B)类中只有一个构造函数 C)构造函数可以有多个参数 D)构造函数无任何函数类型 a c b
16.有关析构函数的说法不正确的是a A)析构函数的名字和类名是一样的B类中只有一个析构函数 C)析构函数绝对不能有参数 D)析构函数无任何函数类型 17有关拷贝构造函数的说法不正确的是 A拷贝构造函数的名字和类名是一样的 B)类中只有一个拷贝构造函数 C)拷贝构造函数可以有多个参数 D)拷贝构造函数无任何函数类型 C++程序设计课件设计制作:徐龙琴 7
C++程序设计课件 设计制作:徐龙琴 7 16.有关析构函数的说法不正确的是 A)析构函数的名字和类名是一样的 B)类中只有一个析构函数 C)析构函数绝对不能有参数 D)析构函数无任何函数类型 17.有关拷贝构造函数的说法不正确的是 A)拷贝构造函数的名字和类名是一样的 B)类中只有一个拷贝构造函数 C)拷贝构造函数可以有多个参数 D)拷贝构造函数无任何函数类型 a
下列程序有无错误: 1\ #include class M class dpublic Myclass(int a) Bvalue=a;j void printo) scout<<value<<end; Myclass() dvalue=0; 1 privates int value: void maino i Myclass t(5); t printo C++程序设计课件设计制作:徐龙琴 8
C++程序设计课件 设计制作:徐龙琴 8 二 下列程序有无错误: 1、#include class Myclass {public: Myclass(int a) {value=a; } print() {cout<<value<<endl;} ~Myclass( ) {value=0;} private: int value; }; void main() { Myclass t(5); t.print(); } void print( )
读程题: 1. #include #include class calculator dpublic: double add(double x, double y) double sub(double x, double y); double mul(double x, double y); double div(double x, double y); double calculator: add(double x, double y) freturn x+y; double Calculator sub(double x, double y) Rreturn x-y;) double Calculator: mul(double x, double y) return xy, double Calculator: div(double x, double y) freturn x/y;) void maino i Calculator val; c0ut<< val. mu( val.add(2,3),a.su运行结果为: C+程序设计课件设计制作-5
C++程序设计课件 设计制作:徐龙琴 9 三 读程题: 1.#include #include class Calculator {public: double add(double x,double y); double sub(double x,double y); double mul(double x,double y); double div(double x,double y);}; double Calculator::add(double x,double y) {return x+y;} double Calculator::sub(double x,double y) {return x-y;} double Calculator::mul(double x,double y) {return x*y;} double Calculator::div(double x,double y) {return x/y;} void main() { Calculator val; cout<<val.mul(val.add(2,3),val.sub(运行结果为: 2,3))<<endl;} -5
#include <iostream. h class myclass dpublic Myclass(int a) cout<<This is<<X<<s constructor. <<endl; cMyclasso scout<<This is <<X<<s destructor. <<endl; i private: intⅩ void maino Myclass c=l 运行结果为: This is I's constructor C++程序设计课件设计制作: This is 1's' s destructor
C++程序设计课件 设计制作:徐龙琴 10 2.#include class Myclass {public: Myclass(int a) {X=a; cout<<"This is "<<X<<"'s constructor."<<endl;} ~Myclass() {cout<<"This is "<<X<<"'s destructor."<<endl;} private: int X; }; void main() { Myclass c=1; } 运行结果为: This is 1 's constructor. This is 1 's 's destructor