C++을 공부하다 보면 std::move라는 표현을 자주 만나게 됩니다.이름만 보면 객체를 어딘가로 “이동”시키는 함수처럼 보입니다.하지만 실제로 std::move는 객체를 직접 이동시키지 않습니다.조금 이상하게 들릴 수 있지만, 이 개념을 정확히 이해해야 C++의 move semantics, smart pointer, 성능 최적화, 객체 생명주기를 제대로 다룰 수 있습니다.이번 글에서는 std::move가 실제로 무엇을 하는지, 그리고 실무에서 어떤 점을 조심해야 하는지 정리해보겠습니다. 1. lvalue와 rvalue 간단 정리std::move를 이해하려면 lvalue와 rvalue를 알아야 합니다.간단히 말하면 다음과 같습니다.구분의미예시lvalue이름이 있고 다시 접근할 수 있는 값변수rvalue..