实验八:模板.docx

上传人:scccc 文档编号:12062872 上传时间:2021-12-01 格式:DOCX 页数:7 大小:11.54KB
返回 下载 相关 举报
实验八:模板.docx_第1页
第1页 / 共7页
实验八:模板.docx_第2页
第2页 / 共7页
实验八:模板.docx_第3页
第3页 / 共7页
亲,该文档总共7页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《实验八:模板.docx》由会员分享,可在线阅读,更多相关《实验八:模板.docx(7页珍藏版)》请在三一文库上搜索。

1、福建农林大学实验报告实验 8 模板一、实验目的和要求1掌握函数模板的声明方法和模板函数的生成方法。 2掌握类模板的声明方法和模板类的生成方法。二、实验内容和原理1、用模板函数实现交换两个整数、 两个双精度浮点数、 两个字符以及两个字符串的程序。 2、以下是一个整数栈类的定义:编写一个栈的类模板包括其成员函数定义 ,以便为任何类型的对象提供栈结构数据 操作。在应用 程序中创立整数栈、字符栈和浮点数栈,并提供一些数据供进栈、退栈和 打印操作。三、实验环境1. 硬件: PC 机;2. 软件: Windows 操作系统、 Visual C+四、算法描述及实验步骤1.#include<iostre

2、am>#include<string>using namespace std;template<typename T>void swap1 T& a,T& b T temp;temp=a;a=b;b=temp;int main int a,b;cout<<"input two integers to a&b:"<<endl;cin>>a>>b;swap1a,b;cout<<a<<b;char c,d;cout<<"input t

3、wo chars to c&d:"<<endl; cin>>c>>d; swap1(c,d); cout<<c<<d;double x,y; cout<<"input two doubles to x&y:"<<endl; cin>>x>>y; swap1(x,y);cout<<x<<y;cout<<"input two strings to p&h:"<<endl;

4、 string p,h;cin>>p>>h;swap1(p,h); cout<<p<<h;return 0;2.#include<iostream>using namespace std; template <class T> class Stackpublic:Stack(int size);Stack()delete stack;void push(T i);T pop();private:int tos,length;T *stack;template <typename T>Stack <T>

5、;:Stack(int size)stack=new Tsize;length=size;tos=-1;template <typename T>void Stack<T>:push(T i) if(tos=length)cout<<"Stack is full"<<endl; return;elsestack+tos=i;template <typename T>T Stack<T>:pop() if(tos<0)return 0;elsereturn stacktos-;void main()

6、int max,n;cout<<" 请输入栈的大小 :"<<endl;cin>>max;Stack<int> a(max);int i;cout<<"n 请输入 "<<max<<" 个整形数据:for(n=0;n<max;n+)cin>>i;"<<endl;(i) ;cout<<" 出栈数据: "<<endl;for(n=0;n<max;n+)cout<<()&

7、lt;<" "Stack<char> b(max);char j;cout<<"n 请输入 "<<max<<" 个字符型数据:for(n=0;n<max;n+)cin>>j;(j);cout<<" 出栈数据: "<<endl;for(n=0;n<max;n+)cout<<()<<" "Stack<float> c(max);float k;cout«"

8、;n请输入"vvmaxvv"个浮点型数据:"<<endl;for(n=0;n<max;n+)cin>>k;(k);cout<<" 出栈数据: "<<endl;for(n=0;n<max;n+)cout<<()<<" "五、调试过程因为 swap 是 C+ 内部的一个函 不能直接调 数用忘记写入返回值了Void push 里面应该用 T 应和前面的类模版一样六、实验结果七、总结1. 掌握了函数模板的声明方法和模板函数的生成方法。2. 类模板的声明方法和模板类的生成方法比拟难理解,写栈的 那题好难。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1