C++에서 SmartPointer 탬플릿 클래스를 구현했습니다.
기본적으로 C++는 리턴이나 대입연산을 하면 복사를 해 버리는데
SmartPointer을 이용하면 기존의 객체가 삭제되지 않고 유지되어 성능과 편리성이 향상됩니다.
C++자체에 이런 기능이 있긴 하지만 그냥 구현해봤습니다. C++ 11 버전 이하에서도 사용 가능합니다.
대입연산(리턴 포함)과 Thread에 전달또한 가능합니다.(예제소스 참조)
Windows/Linux 지원합니다.
Windows용 예제소스 :
SmartPointer 소스
* 2016-11-15 수정
- Non thread-safe 버전 추가 (SmartPointerNTS.h)
- Thread Local Storage 사용하지 않도록 변경(Windows에서 몇개 지원하지 않아서 많이 사용하면 문제발생해서..)
예제소스
언제나 그렇듯 라이센스는 MIT License이므로 자유롭게 사용할 수 있습니다.
공유 시 원작자 표시를 해주세요~^^
* 2016-11-03 수정사항
Thread-safe하게 수정하였습니다.
반응형
'내가만드는것_만든것 > 오픈소스' 카테고리의 다른 글
C++용 Serializable JSONObjectMapper (0) | 2018.11.30 |
---|---|
JsCPPDBC (C++ Database Connectivity) C++에서 JDBC+JPA따라하기 (0) | 2018.11.05 |
[C++] 7z 라이브러리 헬퍼 (JsSevenZipHelper) (3) | 2016.10.23 |
[Android] JAOR (JsAndroidOnlineResource) 자동 온라인 리소스 라이브러리 (0) | 2016.09.22 |
[C] jstime 함수 (timestamp, tm간 변환 구현) (0) | 2016.07.05 |
댓글