a개 허접이고 게임개발자 목표로 취준중인데 대단한 사람들 많은거같음
그래서 지금 std::move와 rvalue를 보고 있는데 너무햇갈림
move는 lvalue를 rvalue로 변환시켜주는거고
이렇게 변환된걸 넘겨주면
이동생성자가 호출되면서
그자체를? 넘겨?주는거라던데 맞음?
그래서 얕은복사로도 완전하게 복사가 가능하다고.
근데 rvalue는 const (타입)& 으로도 받을수있고
머리가 나빠서 이해가 잘안됨..
a개 허접이고 게임개발자 목표로 취준중인데 대단한 사람들 많은거같음
그래서 지금 std::move와 rvalue를 보고 있는데 너무햇갈림
move는 lvalue를 rvalue로 변환시켜주는거고
이렇게 변환된걸 넘겨주면
이동생성자가 호출되면서
그자체를? 넘겨?주는거라던데 맞음?
그래서 얕은복사로도 완전하게 복사가 가능하다고.
근데 rvalue는 const (타입)& 으로도 받을수있고
머리가 나빠서 이해가 잘안됨..
병신임? 자본주의에서 꽁짜로 정보 얻으려하노 안봐도 국비졸업생일께 훤희보인다 ㅋㅋ
도대체 자본주의랑 디씨깃헙갤 질문이랑 뭔 상관이노
자본주의가 뭔지는 아노?
자본주의ㅋㅋㅋㅋㅋ 병신 티내는 건 본인이였고ㅋㅋㅋㅋ
컨셉 아니면 자살추천
훤희 어질어질하네
std move는 rvalue로 그냥 형변환 하는게 다임. 형변환 해서 그거에 받는 함수에 catch 되고 알맞는 처리 해줘라 이거지. 생성자에서 그렇게 받고 deep copy shallow copy 구분해서 쓸데없는 카피를 줄이는거 - dc App
const lvalue 레퍼런스로 받을수 있는건 스페셜케이스인데 r밸류 들어오면 copy elision 일어나는거고 lvalue 들어오면 걍 레퍼런스로 받는거고. 둘다 받으려고 만든 스페셜 케이스임 - dc App
std::move 에 대해서 이해하려면 std::move 자체가 뭘 하느냐보다 C++11 이전에 복사 생성과 throw 가능으로 인한 오버헤드 등 왜 std::move 가 C++11 에 들어왔냐에 대해 찾아보는 게 좋음
ㅇㅇ rust의 소유권으로 찾아보면 std::move가 이렇게 쓰라고 나오는구나 하고 알 수 있다