嵌入式技术
template --声明创建模板I
typename -- 表面其后面的符号是一种数据类型,可以用class代替
T --- 通用的数据类型,名称可以替换,通常为大写字母
使用模板之前:
using namespace std;//两个整型交换函数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;}
使用模板之后:
using namespace std;//两个整型交换函数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;}

全部0条评论
快来发表一下你的评论吧 !