C++中模板Template的使用

C++中模板Template的使用,第1张

 

template --声明创建模板I
typename -- 表面其后面的符号是一种数据类型,可以用class代替
T --- 通用的数据类型,名称可以替换,通常为大写字母

使用模板之前:

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
#includeusing namespace std;#include#include  //两个整型交换函数void swapInt(int &a, int &b) {  int temp = a;  a = b;  b = temp;} //交换两个浮点型函数void swapDouble(double &a,double &b) {  double temp = a;  a = b;  b = temp;}  //函数模板template<typename T> //声明 二 = 个模板,告诉编译器后面代码中紧跟着的T不要报错,T是 - 一个通用数据类型二//函数模板void mySwap(T &a, T &b) {  T temp = a;   a = b;  b = temp;}   void test01() {  int a = 10;  int b = 20;   swapInt(a,b);       cout << " a =" << a << endl;  cout << " b="  << b <<endl;   double c = 1.1;  double d = 2.2;  swapDouble(c,d);  cout << " c=" << c <<endl;  cout << " d=" << d <<endl;}  int main() {  test01();   system("pause");  return 0; }

使用模板之后: 

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
#includeusing namespace std;#include#include  //两个整型交换函数void swapInt(int &a, int &b) {  int temp = a;  a = b;  b = temp;} //交换两个浮点型函数void swapDouble(double &a,double &b) {  double temp = a;  a = b;  b = temp;}  //函数模板template<typename T> //声明 二 = 个模板,告诉编译器后面代码中紧跟着的T不要报错,T是 - 一个通用数据类型二//函数模板void mySwap(T &a, T &b) {  T temp = a;   a = b;  b = temp;}   void test01() {  int a = 10;  int b = 20;   //swapInt(a,b);   //利用函数模板交换  //两种方式使用函数模板  //1、自动类型推导  //mySwap(a,b);  //2、显示指定类型.  mySwap<int>(a,b);       cout << " a =" << a << endl;  cout << " b="  << b <<endl;   double c = 1.1;  double d = 2.2;  swapDouble(c,d);  cout << " c=" << c <<endl;  cout << " d=" << d <<endl;}  int main() {  test01();   system("pause");  return 0; }

C++中模板Template的使用,b32edc52-2f62-11ed-ba43-dac502259ad0.png,第2张

 


	

	
			  审核编辑:汤梓红					
										


					

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2998334.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-09-26
下一篇 2022-09-26

发表评论

登录后才能评论

评论列表(0条)

保存