泛型编程技术支持程序员创建函数和类的蓝图(即模板,template),而不是具体的函数和类。
标准模板库STL(Standard Template Library),STL库是泛型编程技术的经典之作,它包含了许多非常有用的数据类型和算法。
当拥有一个模板时,编译器将根据模板自动创建一个函数,该函数会使用正确的数据类型完成相应的任务。
实例:函数模板
1 #include <iostream> 2 #include <string> 3 //using namespace std; 4 template <class T>//运用模板,告诉编译器, 5 //字母T在接下来的函数里代表一种不确定的数据类型 6 //以上class并不意味着这是类,而是约定俗成的写法 7 void swap(T &a,T &b) 8 { 9 T tmp = a; 10 a = b; 11 b = tmp; 12 } 13 int main() 14 { 15 int i1 = 100; 16 int i2 = 200; 17 18 std::cout << "交换前,i1 = " << i1 << ",i2 = " << i2 << "\n"; 19 swap(i1,i2); 20 std::cout << "交换后,i1 = " << i1 << ",i2 = " << i2 << "\n"; 21 22 std::string s1 = "yiwofeiye"; 23 std::string s2 = "helloworld"; 24 25 std::cout << "交换前,s1 = " << s1 << ",s2 = " << s2 << "\n"; 26 swap(s1,s2); 27 std::cout << "交换后,s1 = " << s1 << ",s2 = " << s2 << "\n"; 28 return 0; 29 }标签:函数,int,第四十四,数据类型,C++,编译器,swap,模板 From: https://www.cnblogs.com/ybqjymy/p/17640677.html