https://linsoo.co.kr/archives/17546
pair, tuple 1 2 3 std::pair p = std::make_pair(int, CString); int a = p.first; CString str = p.second; Colored by Color Scripter cs 1 2 3 4 5 6 7 std::tuple t = std::make_tuple(int, CString, int); int a = std::get(t); CString str = std::get(t); int b = std::get(t); std::tuple *tt = std::make_tuple(int, CString, int); int a = std::get(*tt); // 포인터 변수인 경우 Colored by Color Scripter cs
std::set 키와 값의 자료형이 같아야 하므로 자료형이 1개만 필요하며, 값이 키가 된다. (map 은 키와 자료형이 다를때 사용하므로 std::map 와 같이 자료형이 2개 필요하다. 물론, std::map 처럼 같은 자료형일때도 사용 가능) set 은 수학의 집합 연산이 가능하다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 #include #include #include #include #include int main() { const int N = 6; std::string s1[N] = { "buffoon", "thinkers", "for", "heavy", "..
std::multimap CMap, std::map과 달리 하나의 키가 여러 값을 가리킬 수 있다. 키캆으로 정렬된다. (tree 구조) CString 을 Key 값으로 사용 가능하다. std::unorderd_multimap : 순서가 부여되지 않은 컨테이너는 Hash table구조로 데이터 추가/삭제/검색 속도가 빠르다. Key 값을 std::string 은 되지만, CString 은 안됨. (별도 해시함수를 만들어야 하나?) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 #include #include #include #include typedef int KeyType;..