목록프로그래밍(c++)/Effective STL(C++) (7)
정체불명의 모모
저번 정리가 너무 세세하고 요점이 보이지 않아서 개인적으로 아니다 라고 느껴서 이번에는 깔끔하게 정리를 해보았습니다. CHAPTER2. Vector 와 String 내용 정리 1. 배열을 버리고 vector 와 string을 사용해야 하는 이유 2. vector 와 string의 수행 성능을 높이는 방법 3. string의 여러 가지 구현 방식 4. vector 와 string 데이터를 매개 변수로 넘기는 방법 5. 과도한 메모리 할당을 피하는 방법 1. 배열을 버리고 vector 와 string을 사용해야 하는 이유 동적으로 배열 할당 할 시 문제점 : 메모리 해제에 일일이 신경써야 한다. ▷ vector 와 string의 경우 - 자체적으로 메모리 관리 요소 삽입 시 : 스스로 메모리 확장을 하고, ..
1 - 6 : C++ 컴파일러의 어이없는 분석 결과를 조심하자 상황 : int 데이터가 들어 있는 파일을 list에 복사한다. ifstream dataFile("ints.dat"); list data(istream_iterator(dataFile),// 미리 경고입니다! 이 코드는 제대로 작동하지 istream_iterator());// 않습니다. 매개 변수를 둘러싼 괄호는 무시 되어도 무방한 것이지만, 그냥 괄호는 함수의 매개변수 리스트가 있음을 나타내는 것입니다. 즉, 이 그자체가 함수의 포인터임을 알리는 것 입니다. ifstream dataFile("ints.dat"); list data(istream_iterator(dataFile),// 미리 경고입니다! 이 코드는 제대로 작동하지 istream..
이 책은 "Effective STL : C++ 표준 템플릿 라이브러리(STL)를 효과적으로 활용하는 50가지의 명쾌한 테크닉 모음 입니다. 저자의 STL 정의 : 반복자(iterator)를 가지고 동작하는 C++ 표준 라이브러리의 일부분 1-1 : 적재적소에 알맞은 컨테이너를 사용하자 표준 STL 시퀀스(sequence) 컨테이너 : vector , string ,deque , list → 선형 표준 STL 연관(aasociative) 컨테이너 : set , multiset , map, multimap → key , value 비표준 시퀀스 컨테이너 : slist 와 rope가 있습니다. ( slist : 단일 연결 리스트 / rope : 대용량(문자열) string) 비표준 연관 컨테이너 : hash_..