第7章 模板

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第7章模板

7.1知识要点

1.1.掌握函数模板的概念和定义;

2.2.掌握类模板的概念和定义;

3.3.掌握函数模板和类模板的使用

7.2补充习题

1. 1.关于函数模板,描述错误的是().

(a)(a)函数模板必须由程序员实例化为可执行的函数模板

(b)(b)函数模板的实例化由编译器实现

(c)(c)一个类定义中,中要有一个函数模板,则这个类是类模板

(d)(d)类模板的成员函数都是函数模板,类模板实例化后,成员函数也随之实例化

2.下列的模板说明中,正确的是().

(a)(a)template

(b)(b)template

(c)(c)template

(d)(d)template

3.假设有函数模板定义如下:

template

Max (T a, T b, T &c)

{c= a +b;}

下列选项正确的是().

(a)(a)float x, y; float z; Max(x, y, z);

(b)(b)int x, y, z; Max(x,y,z);

(c)(c)int x,y; float z; Max(x,y,z)

(d)(d)float x; double y,z; Max(x,y,z);

4.关于类模板,描述错误的是().

(a)(a)一个普通基类不能派生类模板

(b)(b)类模板从普通类派生,也可以类模板派生

(c)(c)根据建立对象时的实际数据类型,编译器把类模板实例化为模板类

(d)(d)函数的类模板参数须通过构造函数实例化

5.建立类模板对象的实例化过程为().

(a)(a)基类->派生类

(b)(b)构造函数->对象

(c)(c)模板类->对象

(d)(d)模板类->模板对象

6.在C++中,容器是一种().

(a)(a)标准类

(b)(b)标准对象

(c)(c)标准函数

(d)(d)标准类模板

7.阅读下列程序,写出程序执行结果

(1)#include

template

void Fun(T &x, T &y)

{ T temp;

temp =x; x=y; y=temp;}

void main()

{

int I, j ;

I=10;j=20;

Fun(I,j);

Cout<<”I=”<

Double A, b;

A=1.1;b=2.2;

Fun(A,b);

Cout<<”A=”<

}

(2)# include

template

class base

{public :

base ( T I, T J ){x=I;y=J;}

T sum(){return x+y;}

Private:

T x, y;

};

void main()

{base obj2 (3.3,5.5)l

cout<

base obj1(3,5);

cout<

8,编程题

(1),使用函数模板实现对不同类型数组求平均值的功能,并在函数main()中分别求一个整型数组和一个单精度浮点型数组的平均值.

(2).建立结点包括一个任意类型数据域和一个指针域的单向链表类模板.在函数main()中使用该类模板建立数据域为整型的单向链表,并把链表中的数据显示出来.

(3).学习使用STL编程.选择合适的组件,建立职工信息链表,并完成题中要求的各种操作.

相关文档
最新文档