[C++11] Move Semantics
"Move Semantics(이동 의미론)"은 C++11로부터 도입된 핵심적인 개념으로, 객체의 "소유권"을 전환하거나 "전달"하는 방식을 나타낸다. 이는 C++에서 더 효율적인 객체 복사와 동적 자원 관리를 가능하게 해준다. "Move Semantics"를 이용하면 임시 객체나 rvalue로부터 객체의 리소스를 효율적으로 이동시켜 새로운 객체를 생성하거나 기존 객체에 리소스를 할당할 수 있다. 이를 통해 복사 대신 리소스의 소유권을 이전함으로써 성능을 최적화시킬 수 있다. 특히, 동적 메모리 할당과 같이 무거운 작업에서 효율적이다. 그럼 주로 어디에서 사용할까? 객체의 수명이 다할때 객체가 일시적으로 사용될 때 `std::move`로 인해 명시적으로 호출될 때 보통 이 세 가지 상황에서 사용되는데 다음..
C++/Modern C++(11, 14, 17, 20)
2023. 8. 28. 16:13