std::vector push_back

멤버 함수 push_back은 vector의 끝에 요소를 추가할때 사용하는 함수

참조링크 : https://shaeod.tistory.com/574?category=534073

 

[C++ STL] std::vector - push_back

※ 요약 std::vector의 멤버 함수인 push_back에 대한 내용이다. 멤버 함수 push_back은 vector의 끝에 요소를 추가할때 사용하는 함수며, 이번 포스팅에서는 C++03과 C++11에서의 사용방법에 대해 간단히 알아보..

shaeod.tistory.com

std::vector emplace_back

push_back과 같이 vector의 요소 끝에 원소를 추가하는 함수

 

std::vector의 멤버 함수인 emplace_back은 C++11부터 추가된 멤버 함수로써 push_back과 같이 vector의 요소 끝에

원소를 추가하는 함수이다. 두 함수의 가장 큰 차이점은, push_back과 같은 삽입 함수들은 삽입할 객체를 받지만

emplace_back과 같은 생성 삽입 함수는 삽입할 객체의 생성자를 위한 인자들을 받아 std::vector 내에서 직접 객체를

생성하여 삽입하므로 임시 객체의 생성과 파괴, 복사를 하지 않아도 되서 성능상 더 유리하다는 것이다.

 

push_back으로 하여도 컴파일러 내부적으로 최적화 하기 때문에 emplace_back으로 하는 것과 별 차이가 없을 수 있다.

고로 특별한 경우가 아니라면 호환성이 더 좋은 push_back 사용이 더 나을 수도 있다.

push_bakc함수보다 emplace_back 함수가 대체로 효율적이다. 하지만 반대로 push_back이 더 효율적일 때도 있다.

 

참조링크 : https://shaeod.tistory.com/630?category=534073

 

[C++ STL] std::vector - emplace_back

※ 요약 std::vector의 멤버 함수인 emplace_back은 C++11부터 추가된 멤버 함수로써 push_back과 같이 vector의 요소 끝에 원소를 추가하는 함수이다. 두 함수의 가장 큰 차이점은, push_back과 같은 삽입 함수..

shaeod.tistory.com

std::vector 주요 멤버 함수 목록

참조 링크  : https://shaeod.tistory.com/477?category=534073

'Programming > STL' 카테고리의 다른 글

C++(STL Container) vector  (0) 2020.09.27
C++(STL Container) map  (0) 2020.09.27
C++(STL Container) list  (0) 2020.09.27
C++ STL이란?  (0) 2020.09.27
STL map / unordered_map 과 map이 사용하는 자료구조  (0) 2020.05.07

+ Recent posts