cppreference.comによると、move
署名があります
template< class T >
typename std::remove_reference<T>::type&& move( T&& t ) noexcept;
引数として右辺値参照を使用するのはなぜT&& t
ですか?
また、次のコードを試したとき
void foo(int&& bar) {
cout << "baz" << endl;
}
int main(){
int a;
foo(a);
}
コンパイラから「右辺値参照を左辺値にバインドできません」というエラーが表示されました
何が起こっている?私は困惑している。