이 포스트의 목적 마이어스 싱글턴(singleton)의 한계를 극복하기 위한 피닉스 싱글턴(phoenix singleton)의 구현방법 이 포스트의 준비물 Firefox 4.0 b7 g++ 4.3.2 vim putty 참조 링크 실버버드의 블로그 - C++ 에서 싱글턴 구현하기 - 절차 + 이야기 재혁의 블로그 - 싱글턴의 소멸자 문제 - 피닉스 싱글턴 까지 갔던 절차 gpg 질문 - 싱글턴 구현방법 - 싱글턴 이야기 daniweb.com의 쓰레드 중 atexit 질문 - 샘플 코드 cplusplus.com의 atexit 설명 - 간단한 설명 참조 서적 안드레 알렉산드레스쿠 저. Modern C++ Design. 이기형 역. Addiston-Wesley. 인포북. 초판 2003.07.30. page(23..
책 정리/Modern C++ Design 검색 결과
이 포스트의 목적 마이어스 싱글턴(Singleton)의 한계와 개선점을 정리하기 위해서 작성했다. 이 포스트의 준비물 Firefox 4.0 b7 - 이제 쓸만해 졌다. 참조 링크 http://www.filewiki.net/tc/entry/Singleton-전역단일객체사용방법 - 마이어스 싱글턴의 예 http://www.gpgstudy.com/forum/viewtopic.php?p=114524 - 싱글턴 토론 http://ikpil.com/1275 - 싱글턴 토론2(개인적인 아이디어를 얻었다) 참조 서적 안드레 알렉산드레스쿠 저. Modern C++ Design. 이기형 역. Addiston-Wesley. 인포북. 초판 2003.07.30. page(229~232) 내용 마이어스 싱글턴은 6장-2 에서 싱..
이 포스트의 목적 싱글턴의 기초적인 기능 구현을 정리하기 위해 이 포스트의 준비물 Firefox 4.0 b7 - 이제 쓸만해 졌다. 참조 서적 안드레 알렉산드레스쿠 저. Modern C++ Design. 이기형 역. Addiston-Wesley. 인포북. 초판 2003.07.30. page(222~228) 내용 기본적으로 지원해야 하는 것은 "단일 객체 보장", "전역 접근" 이다. 먼저 "단일 객체 보장"을 위해서 C++ 에서 할 수 있는 것은 다음과 같다. 기본 생성자를 private 에 두기 - 그래야 생성자로 생성을 못한다. 복사 생성자, 복사 할당자(대입 연산자)도 private 에 두기 - 그래야 복사로 인해 생성을 못한다. 그리고 "전역 접근"은 C++ 에서 전역 접근 통로를 만들어 주기만 ..
이 포스트의 목적 싱글턴(Singleton)이란 무엇인지 정리하기 위해서 이 포스트의 준비물 Firefox 4.0 b7 - 이제 쓸만해 졌다. 참조 서적 안드레 알렉산드레스쿠 저. Modern C++ Design. 이기형 역. Addiston-Wesley. 인포북. 초판 2003.07.30. page(219 ~ 222) 내용 싱글톤(Singleton)이란? 발전된 형태의 전역 변수 프로그램 상에서 두 번째 인스턴스를 만들수 없는 기능 싱글톤 패턴은 쓰임에 따라 최선의 방법들이 달라지므로, 무엇이 최고의 싱글톤이라는 것은 옳지 못하다. 그러므로, 각 상황에 맞는 싱글톤을 선택하거나 만들어 낼수 있는 능력을 기르는게 이번 장의 목표이다. 싱글톤을 구현할 때, 고정적으로 몇가지 고려한다. 어떻게 싱글톤 객체를..
이 포스트의 목적 일반화 함수자(함수 객체)가 멤버 함수 포인터도 처리할 수 있게 만든다. 이 포스트의 준비물 Firefox 4.0 b7 - 이제 쓸만해 졌다. 참조 서적 안드레 알렉산드레스쿠 저. Modern C++ Design. 이기형 역. Addiston-Wesley. 인포북. 초판 2003.07.30. page(205 ~ 218) 내용 이 밖에도, 바인딩, 함수 체이닝(체인화), 성능 개선 이슈가 있다. 바인딩 이슈 함수자를 만들 때, 함수의 인자 갯수를 미리 설정하는 기술 또는 함수자를 만들 때, 함수자의 인자 갯수를 줄이는 기술 link : boost::bind, boost::function 함수 체이닝(체인화) 이슈 여러 함수들을 순차적으로 호출해 주는 하나의 함수로 만드는 기술 link :..
이 포스트의 목적 일반화 함수자(함수 객체)가 멤버 함수 포인터도 처리할 수 있게 만든다. 이 포스트의 준비물 VMware player 3.1.2 Debian 5 64bit g++ 4.3.2 vim 7.1.314 project.vim make 참조 서적 안드레 알렉산드레스쿠 저. Modern C++ Design. 이기형 역. Addiston-Wesley. 인포북. 초판 2003.07.30. page(199 ~ 205) 내용우선 멤버 함수의 포인터를 받기 위한 방법부터 알아야 한다. 다음 예제에서 하이라이트 된 부분을 잘 보면 쉽게 이해할 수 있을 것이다. template void tiny_functor_test(T param_func) { T save_func = param_func; save_func(..
최근댓글