어디에 쓰이는고 하면, 컨테이너의 객체들을 들 쑤시고 싶을 때, 함수 객체를 사용해야 할 때, 일일이 함수 객체를 만들어 주기 귀찮을 때, 주로 사용 된다. bind 는 std::bindlst 와 std::bind2nd를 보다 일반화 시킨 함수이다.. bind 는 임의의 함수, 함수 포인터, 함수 객체, 멤버 함수를 함수 객체로 만들 수 있으며, 원하는 위치에 원하는 값을 전달 시킬 수 있는 함수 객체를 만들어 준다. (요구 조건 또한 없다. 묶고 싶다면 bind 라고 외워도 될 정도..) 바인드의 가장 기초가 되는 사용법을 알아보면 #include using boost::bind; int f(int a, int b) { return a + b; } int g(int a, int b, int c) { r..
boost 검색 결과
Boost는 개발을 가속시키는 도구이다. 처음 Boost를 shared_ptr 를 사용하기 위해서 썼었다. 그리고 주변에서 만들어서 써야 한다는 말을 듣고, 직접 smart_ptr을 만들었었다. 하지만, 그 기능에 대한 검증이 힘들고, 버그가 있는지 없는지 알 수 없는 상태를 유지해야만 했다. 그리고 어느날, std::pair 을 사용 하다가, 3개 이상을 묶고 싶을 때, 3개 이상을 한번에 선언 하려고 할 때를 위하여, 템플릿 클래스를 만들어서 썻었으나, 만드는 과정 중 부스트의 tuple 을 본 순간, 나는 다시 boost 를 써야만 한다 라고 생각을 굳힌다. Boost 는 개발을 가속시키는 도구이다. 부스트의 한구절 한구절 코드를 곱씹어 보아야 겠다.
내가 STL에 조예가 깊어서 글을 남기는 것이 아니라, Effecitve STL 을 공부하는 사람들이 이 글을 보고, 도움이 되었으면 하는 생각과, 혹시 내가 틀린것이 있다면 지적해 주시지 않을까 란 생각으로 글을 올리는것임을 미리 밝힙니다. - 최익필 무슨 말이 필요하랴? 많은 정보가 있으니 즐겨찾기에 추가하시고 탐험하길! SGI STL 싸이트 : http://www.sgi.com/tech/stl/ STLport 싸이트 : http://www.stlport.org/ Boost 싸이트 : http://www.boost.org/ 이상!
babo_ptr은 내가 실험삼아 만드는 스마트 포인터 이다. 메모리 릭 테스트도 다 끝냈다. 이 상태에서 .. 두 스마트 포인터의 비교... 우선 shared_ptr을 조금 밖에 분석을 못했는데, 1. 쓰레드 동기화 기법도 들어갔다. 2. shared_ptr 8바이트, count 용 8바이트 3. 기본적인 예외처리 되어 있음 babo_ptr 은.. 1. 쓰레드 동기화를 뺏다. 2. babo_ptr은 8바이트, 중 count 용 4바이트 를 소모 한다. 3. 예외처리 안되어 있음;; 이렇게 만들었다. .. 생성 시간 비교에선 babo_ptr이 약간 빠르다. 이건 당연할듯 4바이트 적게 생성하니까.. 문제는 .. 소멸할 때, babo_ptr은 약 10초라면 shared_ptr은 5초이다. 도저히 이해가 가지..
최근댓글