insert(2)
-
[잡다한코딩] Map insert로 뭘 쓰지?
어느 날 아는 동생(디버프)에게 형은 map에 insert 할 때 뭘로 해요? 라는 질문을 받았다.나는 보통 make_pair를 지금껏 사용하고 있었는데 사실.. 맵알못이라 그냥 저걸 사용했다.그래서 공부를 하는 겸 이것 저것 찾아봤더니value_type, pair, make_pair 이렇게 세 가지로 주로 사용하고 있다.세간에 알려진 바로는 value_type가 제일 빠르다고 한다.회사에서도 value_type으로 된 코드들을 꽤 많이 본 것 같다. 어떤 블로그에서 본 예시 make_pair가 실제로 느리다고 한 코드다. 12345678 std::map tmpMap; for (size_t i = 0; i
2016.12.21 -
[effective STL] 항목 24 : map에서 []나 insert는 효율 문제에 주의하자.
1234567891011class Widget {public: Widget(); Widget(double weight); Widget& operator=(double weight); ...}; ... map mW;cs double 값을 이용하여 widget을 초기화 할 수 있다. 이렇게 자료구조가 있을 때 두 가지 정도 작업이 있을 수 있다.1. map에 값을 넣으며 초기화.2. map에 들어가 있는 값을 변경하는 작업. 보통은 둘 다 이렇게 사용한다.1mW[1] = 1.50;cs map의 operator[] 연산자의 특징추가 아니면 갱신(add or update) 기능을 수행하도록 설계되어 있다. 1mW[k] = v;cs 키 값 k가 들어 있는지 점검 -> 그렇지 않다면 k와 v를 페어로 묶어 맵에 새..
2016.02.07