《数据结构》
实验报告
题目:_类模板的定义与应用
学号:_____88888888___
姓名:____Coder_J______
东南大学计算机系
实验题目
一、实验目的
1.掌握类模板的声明方法和对象的定义及使用。
二、实验内容
1、设计一个类模板,其中包括数据成员num1和num2,以及实现两个数据交换的函数。定义类对象,完成交换两个整数、两个双精度浮点数、两个字符以及两个字符串的程序。
2、设计一个类模板,其中包括数据成员T a[n],以及在其中进行查找数据元素的函数
int search(T)
定义类对象,完成在整型数组、浮点型数组、字符数组中查找元素。
三、实验结果
1.实验代码
#include
#include
#include
#define N 3
using namespace std;
template
class Swap{
public :
Swap(numtype a,numtype b){x=a;y=b;}
numtype ___(){
temp=x;
x=y;
y=temp;
return x;
}
//test
numtype ____(){
return x;
}
//test
private :
numtype x,y;
numtype temp;
};
template
class Seh_arr{
public:
Seh_arr(numtypeeee a[N]){
for(int i = 0; i < N; ++i){
*(x+i)=*(a+i);
}
}
numtypeeee seh(){
cout << “input the Number of the element you want:”;
cin >> T;
return x[T-1];
}
private:
numtypeeee x[N];
int T;
};
int main(void){
Swap wap1(3,7);
cout<
Swap wap2(45.78,93.6);
cout<
Swap wap3(‘a’,’A’);
cout<
Swap wap4(“nice”, “good”);
cout<
int a[N]={1,2,3};
Seh_arr_testInt(a);
cout << _testInt.seh() << “–search int.”<< endl;
float b[N]={1.1, 2.2, 3.3};
Seh_arr_testFlo(b);
cout << _testFlo.seh() << “–search float.” << endl;
char c[N]={‘a’, ‘b’, ‘c’};
Seh_arr_testCha(c);
cout << _testCha.seh() << “–search char.” << endl;
string d[N]={“my”, “name”, “is”};
Seh_arr_testStr(d);
cout << _testStr.seh() << “–search string.” << endl;
getch();
return 0;
}
2.实验效果
XXXXXX