반응형 vector1 이동(move)이 더 효율적인데 emplace_back()은 왜 복사하는가? 이동(move)이 더 효율적인데 emplace_back()은 왜 복사(copy)하는가?emplace_back()이 '이동(move)'이 아닌 '복사(copy)'하는 이유는, 프로그래머가 l-value 변수를 전달하면 해당 변수를 앞으로 또 사용할 수도 있다고 컴파일러는 가정해야만 하기 때문이다. 이름 있는 변수(l-value)는 다음에 또 사용할지도 모르는 소중한 변수이기 때문에 emplace_back()의 인자로 들어오면 이동하지 않고 복사를 수행합니다. 만약 이동시킨다면 해당 변수 data는 빈 껍데기만 남아서 다른 곳에서 사용이 불가능하다.// l-value 생성MyData data;data.ID = 1;data.Name = "kane";data.Address = "ganam-gu";std::vec.. 2025. 12. 6. 이전 1 다음