⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 26.cpp

📁 26.编写一个具有如下样式的类模板tmplt
💻 CPP
字号:
///////////////////////////////////////////////////////////////////////////////////////////////
/*26.编写一个具有如下样式的类模板tmplt,用于实现所谓的反序输出问题,其中使用了类型参数T
(使所处理的元素类型可变化)以及普通参数n(元素个数也可变化):
template <class T, int n> class tmplt {
	T arr[n];			// n个T类型的数据存放于数组arr之中
public:
	void dataIn(); 		//从键盘输入n个T类型数据放入arr数组中
	void reverseOut();	//将arr数组中的数据按输入的相反顺序输出
};
	而后编制主函数,将类模板实例化为某个具体的类并说明类对象,之后通过对象调用其负责输入数据的
	成员函数,再通过对象调用另一成员函数按反序输出那些输入数据。
*/
/////////////////////////////////////////////////////////////////////////////////////////////////
#include<iostream>
#include<stdlib.h>
#include<iomanip>
using namespace std;

template <class T>
class tmplt
{
 private:
  int n;
  T *array;               // n个T类型的数据存放于数组arr之中
 public:
  void datain();          //从键盘输入n个T类型数据放入arr数组中
  void reverseout();      //将arr数组中的数据按输入的相反顺序输出
};


template <class T>
void tmplt<T>::datain()
{
 cout<<"请输入您要的数组的大小"<<endl;
 cin>>n;
 array=new T[n];           //分配存储空间
 cout<<"请输入您要的数组的数值(注意数值之间要有空格)"<<endl;
 for(int i=0;i<n;i++)
  cin>>array[i];
}


template <class T>
void tmplt<T>::reverseout()
{
 cout<<"反序后输出的数组为"<<endl;
 for(int i=n-1;i>=0;i--)
  cout<<array[i]<<setw(4);          //定义输出格式
 cout<<endl;
}


void main()
{
 cout<<"*****************************欢迎进入加强,提高题26*****************************"<<endl;
 tmplt <double> array;
 int select=-1;
 while(select!=2)
 {
  cout<<"请选择您要的操作        1.进入算法"<<endl;
  cout<<"                        2.退出算法"<<endl;
  cin>>select;
  switch(select)
  {
  case 1:
        array.datain();
        array.reverseout();
     break;
  case 2:
   select=2;
   break;
  }
 }
}



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -