Classes Shared by MFC and ATL




 이게 몬 소리일까?? ㅋ
예전부터 MFC 로 코딩할 때 CString 을 MSDN 에서 찾아보면 ATL 어쩌구 저쩌구... 나온다. 내심 CString 은 MFC 의 클래스가 아닌가 의문을 품었었는데... 그러다 또 COleDateTime 이라는 클래스를 사용할 때도 ATL 관련 어쩌구 저쩌구... 나온다.

 Visual C++ .Net 2002 부터 몇몇개의 유용한 MFC 유틸리티 클래스들은 MFC 와의 의존성을 없애고 Native C++ 프로젝트에서 사용할 수 있도록 다시 작성되고 교정 되었다. 따라서 MFC 프로젝트가 아닌 Win32 프로젝트 같은 프로젝트에서 사용하려는 클래스의 헤더파일만 include 해주면 해당 클래스를 사용할 수 있다.

대부분의 파일들은 atlbase.h 파일이 먼저 include 되어 있어야 제대로 동작된다. atlstr.h 파일의 경우에는 atlbase.h 가 include 되어 있어 신경 써주지 않아도 되지만, atltypes.h 에는 atlbase.h 가 include 되어 있지 않으므로 atltypes.h 를 include 하기전에 atlbase.h 를 먼저 선언해 주어야 한다. 그렇지 않으면 링크 에러가 난다.

MSDN 에서 MFC 와 ATL 에서 공유 가능한 클래스 리스트중 일부는 다음과 같다.
자세한 목록은 아래 MSDN 을 참조.





■ History

2009.09.21 - 포스팅
2009.09.29 - atlbase.h 내용 추가




■ 참조

1. ATL/MFC Shared Classes (MSDN)
2. Classes Shared by MFC and ATL (MSDN)
3. ATL/MFC Shared Classes (Tistory blog)
Posted by six605
,