C++ rvalue 右值笔记

                     

贡献者: 待更新

1. Perfect forwarding

void process(int& x)  { cout << "lvalue\n"; }
void process(int&& x) { cout << "rvalue\n"; }

template<typename T>
void wrapper(T&& arg) {
    process(arg); // Always calls lvalue version
    process(std::forward<T>(arg)); // Calls correct version
}

                     

© 保留一切权利