내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 왜냐하면, 각각의 역활이 다르기 때문에 구현이 다르다. 이 구현이 다르다는 의미는 속도, 부하가 다르다는 의미이다. 그러므로 제대로 파악하자는 취지에서 쓰여진 항목이다. 정리하자면 http://turboc.borlandforum.com/impboard/impboard.dll?action=read&db=cpp_tip&no=25 질문 (해야 할 작업들) 사용할 알고리듬 사용할 멤버 함수 정렬되지 않은 범위 정렬된 범위 set 또는 map multiset 또는..
책 정리/Effective STL 검색 결과
내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 항목 43에서 말했던 STL 제작자보다 더 좋게 만들 수 없다면 알고리즘은 더 좋은 성능을 보여줄것이라는 이야기와 일맥상통 한다. 왜냐하면 STL 제작자 중 컨테이너 제작자 보다야 컨테이너에 대해서 더 자세히 알겠는가? 이름 짓기관례상 알고리즘과 동일한 기능을 하는 멤버 함수는 동일한 이름을 갖는다. 그런데 굳이 동일한 기능을 하는데, 멤버 함수로 만들 필요가 있을까? .. 더 뛰어난 성능을 보이기 때문에, 멤버 함수로 만들어 놓은 것이다. map.fin..
내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 루프는 for, while, do~while 이 있다. 하지만 이것만 보면, 이게 어떤 역활을 하는 루프인지 코드를 봐야지만 가능해진다. .. 뭐 .. 알고리즘도 그런 경우가 있긴 하지만 말이다. ㅋ 더 좋다는 이야기로 주제가 흘러 가는데. 그 이유 3가지를 든다. 첫째, 루프보다 알고리즘이 더 빠르다. 물론 알고리즘 내부에도 루프가 있다.(내부 보면 안다) 하지만 STL 제작자보다 사용자가 더 깊게 알기는 힘든면이 많다. 그렇기 때문에 STL 제작자가 ..
내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 모든 프로그래머가 변수명 a 는 test 용도로만 쓴다고 알고 있다고 가정해보자. 그렇다면 모든 프로그래머는 a를 테스트 용도로만 사용함으로써 코드의 가독성이 올라 갈 것이다. 이처럼 많은 프로그래머들이 암묵적으로 몇가지 알고 있다고 믿는 상황이 있따. operator == 두개의 값이 상등성으로 비교한다고 믿는다. 복사생성자는 모든 값을 동일하게 복사된다고 믿는다. 객체의 주소를 받아내면 포인터가 나온다고 믿는다. 그리고... less는 operator..
내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 제목 그대로, 분명하게 쓰이는데가 있다. 각 어댑터의 용도만 알면 쉽게 이해 할수 있을 듯 하다. 우선 적으로 설명해야 할것은, 술어 구문(predicate) 함수 객체를 받는 알고리즘의 경우, 대상 객체를 인자로 operator()가 호출 되는 형식을 취하고 있다. 문제는 1. f(x); 2. x.f(); 3. p->f(); 의 형태의 호출을 다음과 같이 처리해야 한다. 1번은 f 를 함수 객체로 만들며, 이 객체의 operator() 가 x를 받으며 ..
내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 이번 항목은 한참 해맷다. 4시간 정도.. 화딱지 나는 항목이였다. 객체지향 프로그램밍으로 코드를 짜다보면 함수를 함수 객체로 만들어야 할 때가 있다. 이런 함수 객체를 다시 다른 함수객체를 만들기 위해선 코드를 다시 짜야 하는데, 이 과정이 무척 귀찮다. 그래서인지 STL에선 다른 형태로 함수 객체를 변경하는 어댑터를 제공한다. 어떠한가? 흥미롭지 아니한가? 그렇기 때문에, 함수 객체를 만들고자 한다면, 어댑터 적용이 가능하게끔~ 하자는 이야기가 이번 ..
최근댓글