본문 바로가기

전체 글

(679)
map 과 unordered_map 의 차이점. [1. 개요]std::map 은 이진 탐색 트리를 기반으로 한다.search 연산을 대상으로 로그의 시간복잡도를 갖는다.std::unorderd_map 은 해시 테이블을 기반으로 한다.key 에 대한 hash 함수가 잘 정의 된다면, search 연산을 대상으로 일반적으로 상수 시간의 시간 복잡도를 갖는다. 그러나 key 를 대상으로 iterate 시 차이점이 있는데,map 은 key 가 정렬 조건 상 앞서는 것 순서대로 조회 할 수 있지만,unordered_map 은 그렇지 않다. (그래서 unordered_map 인 듯.)또, 경우에 따라서, unordered_map 이 map 보다 더 많은 메모리를 사용 할 수 있다. [2. 예제]#include #include #include #include co..
정적 라이브러리 생성 및 링킹.. [1. 개요]g++ -v --help 를 통해서, 모든 옵션을 확인 할 수 있다.[2. 코드 구조]main.cppcalc\s1.cpps2.cpputil.hpp[3. 절차]calc 라이브러리를 빌드하도록 한다.main.cpp 컴파일 시 calc 라이브러리를 링킹 하도록 한다.A. 라이브러리 빌드cd calcg++ -c s1.cpp s2.cpp# 컴파일 및 어셈블까지 하고, 링킹은 하지 않는다.# *.cpp 로 해도 된다.ar rcus libcalc.a *.o# 각 object 파일을 명시해도 된다. (s1.o  s2.o ...) # 현재 디렉터리에 있는 모든 object (.o) 파일을 하나의 파일로 묶어준다.# 일반적으로, .a 파일은 static 라이브러리 파일을 의미한다.# 일반적으로 ,lib.a 형..
chrono 타이머 [1. 개요]C++ 애플리케이션 작성 시, 여러가지 타이머 관련 예제 정리[2. 예제]