이 포스트의 목적 구현한 safe delete를 기록해 두려고 이 포스트의 준비물 Firefox 4.0 b7 VMware player 3.1.2 Debian 5 64bit g++ 4.3.2 vim 7.1.314 project.vim make 참조 링크 http://www.gpgstudy.com/forum/viewtopic.php?p=21353 - 2005년도 글.. 참조 인물 김문순 내용 내가 처음 safe delete 개념을 알게 된 것은 2008년 상반기 쯤 KGCA 학원에서 문순이가 PT 할때 였다. 그때 별다른 느낌이 없었고, 가져다가 썻다. 그때 코드가 #define SAFE_DELETE(x) if(x) delete x; x = 0; 이런식으로 되어 있었다. 사용하는데 별 문제는 없었으나, 20..
전체 글 검색 결과
이 포스트의 목적 마이어스 싱글턴(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(..
최근댓글