51.模板与引用

 1 #include <iostream>
 2 using namespace std;
 3 
 4 //ref  在模板中变量转化为引用
 5 //move 左值引用转化为右值引用
 6 //副本,不能改变数据
 7 template<class T>
 8 void print1(T t)
 9 {
10     t += 1;
11     cout << t << endl;
12 }
13 //左值引用,能改变数据
14 template<class T>
15 void print2(T &t)
16 {
17     t += 1;
18     cout << t << endl;
19 }
20 //右值引用可以改变数据
21 template<class T>
22 void print3(T &&t)
23 {
24     t += 100;
25     cout << t << endl;
26 }
27 
28 void main()
29 {
30     int data = 100;
31     int &ldata(data);
32     int &&rdata(data + 1);
33     print3(rdata);
34     cout << rdata << endl;
35     cin.get();
36 }
原文地址:https://www.cnblogs.com/xiaochi/p/8552776.html