c++11 이후 표준으로 포함된 unordered_map,set둘다 일반 (ordered)map,set 과 내부 구조는 아예 다르다사용방법 이 비슷하기에이름이 같은 map,set 일 뿐(ordered)map ,set 은 트리구조로 되어 있어 삽입하며 정렬되고 정렬된만큼 검색은 Olognunordered_map,set 은 hashtable 기반으로 키를 hash 를 만들고 배치하고 접근하기 때문에 삽입할때 O1, 탐색할때 O1 random access 가 가능하며 [ ] 연산자로 접근 가능하다 https://en.cppreference.com/w/cpp/container/unordered_map https://en.cppreference.com/w/cpp/container/unordered_set
Tag: stl
c++(and another) compiler on website
gcc 버전별 컴파일 가능한 modern c++ feature 확인하기 곧 바뀔 현실이지만 실제 현업에서 많이 장애물이기도 하면서 현재도 많이 남아 있는 centos 에 대한 이슈로 gcc 빌드가 몇몇 회사의 몇몇 솔루션의 경우 c++ 11 의 feature 조차 제대로 사용할 수 없는 (하지만 일부는 또 사용가능한) 케이스가 많다 그때 그때 확인하거나 알고 싶을 때 유용한 사이트가 있다 […]
std::vector::emplace_back (modern c++)
list,deque,vector 에 사용가능한 멤버 함수 c++11 에 처음 추가 되었으며 가변인자 템플릿을 인자로 받는다인자로는 vector 의 instance / class 인 경우 생성자를 넣어 주어야 한다emplace_back 의 경우 일반 push_back 과 다르게 vector 로 복사되는 흐름이 아닌vector 에 element 가 생기는 동시에 초기값을 넣어주게되어 복사가 일어나거나 임시객체가 생성되지 않아 좀더 빠른 코드 c++17 이후의 return value […]