내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 이번 항목은 포인터를 컨테이너에 담았을 때, remove-erase 합성문으로 지워도 메모리 누수가 발생할 수 있다는 지적을 해준다. 당연하겠지만.. 포인터를 담는 변수를 지운다고 해서, 포인터의 실제값이 사라지는게 아니기 때문이다. 누누히 말해오는 것이기 때문에 길게 이야기 할것 없이 결론만 말한다. 포인터를 담는 컨테이너의 경우, 1. 직접 delete 시켜주고 날리거나, 2. 스마트 포인터를 담아주자.
책 정리/Effective STL 검색 결과
내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 STL 알고리즘 중 동작이 제일 혼동스러운 함수를 손꼽으라면 단연 remove가 뽑힌다. 왜냐하면 함수명이 ... 햇갈리기 때문이다. remove 알고리즘을 호출하여 컨테이너 내부의 값들을 지울려고 한다해도, 컨테이너 내부의 값들은 지워지지 않는다. 왜냐하면 remove 함수는 이터레이터를 인자로 받기 때문에, 어떤 컨테이너에서 값을 지워야 하는지 알 수 없기 때문이다. 그런고로, remove 류의 모든 함수들(unique, remove_if)은 값을 지..
내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 이번 항목에서는 정렬을 하고자 할때, 이용되는 sort 라는 함수들의 효율을 정확히 파악해 두어 사용하라는 것이다. sort 알고리즘은 sort, stable_sort, partial_sort, nth_element, partition가 있고, 어떻게 사용하면 좋은지 정리해보자. Sequence Container 이거나 배열이라는 조건 하에서 1. 전체 정렬을 할 때, sort 나 stable_sort 2. 상위 n개의 요소만 순서에 맞추어 뽑아내고자 할..
내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 이제부터 알고리즘(Algorithm)에 대해서 효율적인 사용 방법에 대해서 이야기 한다. STL 에 있어 알고리즘은 .. Containers 만큼이나 중요하다. 기본 제공되는것만도 100가지가 남지만, 이중 제일 많이 쓰이는 부분과 좋은 알고리즘(Algorithm)이지만 소개받지 못했던 부분에 대해서 이야기 한다고 하니, 눈 딱 크게 뜨고, 봐야 할 것같다. 이번 항목의 주제는 "알고리즘을 이용하여 데이터를 넣을 때, 컨테이너의 공간을 크게 잡고 넣는게 ..
내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 이번 주제는 istream_iterator의 사용보다 istreambuf_iterator의 사용이 더 좋을 수가 있다. 는 것이다. 이유는 istream_iterator 가 operator>>를 이용하기 때문이다. operator>>는 서식화 입력(formatted input)을 수행 한다. 쉽게 생각해서, 자질구레한 뒷처리를 다 해준다. 하지만 istreambuf_iterator는 stream 자체의 버퍼를 직접 건드려서 문자들을 바로 읽는다. (s.r..
내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 우리말이 자주 어렵다고 생각한다. 글을 쓸 때, 문맥상 이상하게 이어지는 경우가 많기 때문이다. 그래서 "A는 B이다" 식으로 이야기를 하려고 한다. 이번 주제는 reverse_iterator.base() 가 어떻게 동작하는지에 대한 이야기이다. 왜냐하면 insert() 나 erase()로 reverse_iterator 를 사용할 수 없어, iterator 로 변환하는데 base() 함수를 사용 하기 때문이다. base()로 가리킨 iterator 는 무..
최근댓글