티스토리 툴바


[프로젝트 소스]



2, 3차 세미나를 통해 RAII(Resource Acquisition Is Initialization) 클래스 설계 원칙등 기본적인 사항들을 학습하였는데...

이번 세미나 자료를 통해 RAII 객체의 참조카운트, 소유권 관련 이야기를 하려고 한다.

std::tr1::shared_ptr을 이용한 참조카운트,
std::auto_ptr을 이용한 소유권

특히, shared_ptr은 아직 ISO/ANSI 표준이 아니므로 boost 라이브러리를 이용하여 컴파일할 계획이며,
그리고...
생성자와 소멸자에서 발생되는 예외를 효과적으로 대처하는 방안까지...

음.... 공부해야할 내용이 넘.... 많다..... ㅋㅋㅋ...

세미나 자료를 준비하면서,,,
"The C++ 특별판" 도서는 C++ 예외처리 매커니즘을 이해하는데 많은 도움이 되었다....
사용자 삽입 이미지

댓글을 달아 주세요

  1. 슬포 2008/10/23 13:22  댓글주소  수정/삭제  댓글쓰기

    좋은 자료 감사합니다! 많이 배워 가네요.^^
    즐겨 찾기 등록해놓고 종종 들르며 배워가겠습니다.

[프로젝트 소스]



이번 자료는
특정 예외 발생시 예외 객체를 어떤 타입으로 catch 할것인가에 대한... 이야기 입니다.

기본적으로 catch 구문은 값, 참조자 그리고 포인터 타입 예외 객체를 모두 지원 합니다.

catch
(ExceptionSEH exp)       // 값
catch(ExceptionSEH&
exp)     // 참조자
catch(ExceptionSEH*
pExp)    // 포인터

그렇다면.... 우리는 어떤 타입으로 예외 객체를 catch 하는 것이 효율적일까?

모범 답안은 "예외참조자로 받아내자"이다.
왜 ?

"More Effective C++"의 Chpater 3 예외를 참고하면 더욱 좋을 듯....
사용자 삽입 이미지

댓글을 달아 주세요

Exception Handling[2] RAII

Effective C++ 2007/09/14 01:43 Posted by 고가별
[프로젝트 소스]



Effective C++ 3판 3장 내용을 토대로
자원관리를 위한 RAII(Resource Acquisition Is Initialization) 클래스 설계
유의 사항들을 중심으로 정리한 문서입니다.

RAII 클래스 설계 원칙
1. Single Argument Constructor(암시적형변환)explicit(명시적형변환) 키워드를 이용하자.
2. 자원 접근은 가능한 명시적 변환(Getter 함수)을 이용하자.
3. RAII 객체 복사는 관리 자원 성격에 따라 구현하자.

또한 RAIIProxy 패턴 좋은 예이다.
사용자 삽입 이미지

댓글을 달아 주세요

Exception Handling[1] Basic & Dump

Effective C++ 2007/09/14 01:40 Posted by 고가별


[프로젝트 소스]



Exception Handling 관련된 기초 지식을 정리한 자료입니다.
추가적으로 Dump 파일 생성 및 Debugging 관련 자료를 추가 하였습니다.
자료를 만들면서 참고한 서적인데.... 음.... 개발 분야에 또 다른 세상이 있는 듯 합니다.....

Dump 파일 관련 API : SetUnhandledExceptionFilter, MinidumpWriteDump, ...
Dump 파일 생성 도구 : Userdump 8.1, ...

사용자 삽입 이미지






















댓글을 달아 주세요