내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필



실제로 내가 사용해본 바로, 함수 객체는 정말 STL 의 감초같은 녀석이였다. 이 녀석을 만드는 방법과 어떻게 효율적으로 사용하는지 42항목까지 설명해 준다.

이번 항목에서는 함수 객체 설계시 값에 의한 전달을 고려해야 설계하라는 것이다.

왜냐하면
1. 지금까지 사용했던 알고리즘 중 함수객체를 사용하는 것들은 전부 함수객체를 값에 의한 전달로 사용했고
2. 함수 객체는 함수 포인터 본 뜬 것
을 들 수 있다.


그렇다면 값에 의한 전달을 어떻게 하면, Effective 하게 만들수 있까?
기본 모토는 1. 함수 객체의 크기를 작게 만들것, 2. 다형성을 없앨 것

1. 불필요한 변수를 만들지 않으면 될 것이고
2. operator() 를 virtaul 로 만들지 않으면 될것이다.

하지만 어디 인생사 이렇게 효율적인가...? 오히려 복잡한게 더 효율적일 수도 있다. 그렇기 때문에, 되도록 크기를 작게하고 경우에 맞게 다형성을 사용할지 말지 결정 하면 된다.

관련링크
http://ilu8318.egloos.com/839134
http://oldpie.yoonkn.com/cgi-bin/moin.cgi/EffectiveStl
http://yesarang.tistory.com/57 <-- 김윤수님의 함수객체에 대한 설명
http://ikpil.com/268
http://ikpil.tistory.com/537
http://www.nortul.com/linux/STL/fun_0476.htm


  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 라이프코리아트위터 공유하기
  • shared
  • 카카오스토리 공유하기