시간이 부족하다... 하루가 이렇게 짧게 느껴지는 건 오랜만이다.
전체적으로 c++에는 익숙해지고 있는 것 같다. 이제 뭔지 조금은 알 것 같다. 하지만 암기해야하는 부분들은 암기를 빨리 해야겠다!!
오늘도 c++, STL, 리눅스 vim에 대해 배웠다.
이번주는 이제 내일 하루 남았으니 화이팅하자!!!물론 주말에도 해야겠지만!
컴파일 과정 시점, 런타임 이런게 아직은 조금 헷갈린다. 안다고 생각했었는데 템플릿을 잘못 사용하면 컴파일 오류가 나는데 어디서, 왜 나는건지 바로 캐치하지 못하겠다ㅠㅠ (퀴즈를 풀면서 혼란을 느꼈다...)
equal()
: 같은지mismatch()
: 다른 부분이 어디인지, pair(first, second)가 리턴됨lexicographical_compare()
: 서로 다른 형식을 비교하고 싶을 때copy()
: 복사move()
: 항목이 많은 경우 copy보다 가벼움remove()
: 실제 제거x, 제거할 것들을 뒤로 모아줌, 제거될 부분의 시작 iterator 리턴replace_if()
: 조건에 대해 대체unique()
: 인접 항목에서 중복값 제거reverse()
: 항목 앞뒤 반전인데 역방향 반복자가 있어서 잘 사용xincludes()
: 특정 항목 포함여부set_union()
: 합집합set_intersection()
: 교집합set_difference()
: 차집합set_symmetric_differ()
: 대칭 차집합set
, map
: 중복 xmultiset
, multimap
: 중복값 허용unordered_set
, unordered_multiset
, unordered_map
, unordered_multimap
정말 다양한 구현 방법이 존재한다는 것을 다시한번 느꼈다
endl
를 사용하면 시간초과가 난다. 이걸 찾아내는 과정이 오래걸렸다....endl
의 경우 실행바다 내부 버퍼를 지우는 역할도 해서 시간이 오래걸린다고 한다. endl
대신 '\n'
을 사용하자!!!