//
// 3.6.cpp
// c++1x tutorial
//
// created by changkun at changkun.de
//
// å®ç¾è½¬å
#include
#include
void reference(int& v) {
std::cout << "å·¦å¼å¼ç¨" << std::endl;
}
void reference(int&& v) {
std::cout << "å³å¼å¼ç¨" << std::endl;
}
template
void pass(T&& v) {
std::cout << "æ®éä¼ å:";
reference(v);
std::cout << "std::move ä¼ å:";
reference(std::move(v));
std::cout << "std::forward ä¼ å:";
reference(std::forward(v));
}
int main() {
std::cout << "ä¼ éå³å¼:" << std::endl;
pass(1);
std::cout << "ä¼ éå·¦å¼:" << std::endl;
int v = 1;
pass(v);
return 0;
}