2021/06 4

C++ - 전처리기 지시어(조건부 컴파일)

C++ 실행 파일 만들어지는 순서 전처리 -> 컴파일 -> 오프젝트 파일 생성 -> 링커에 의해 실행파일 생성 전처리 위 순서 중 전처리는 컴파일 하기 전 소스 파일 내에 존재하는 전처리 지시어를 처리하는 작업을 뜻한다. 특징은 #기호가 붙는다. 조건부 컴파일 소스파일 중 조건에 부합하는 소스만 컴파일 하는 방법이다. 대표적으로 #if, #ifdef, #elif 등이 있다. 그 중 ifdef는 상수가 정의 되어 있다면 참이고 컴파일 한다. 아래는 예제이다. #define A 100 #ifdef A //실행된다. 나머지는 기존의 if else문 처럼 사용하면 된다.

C++ - Windows API와 MFC

Windows API API는 Windows의 OS가 제공하는 함수들이며 OS가 직접 사용하는 함수들이다. 즉 OS나 시스템 프로그래밍과 직접 통신해야 하는 저수준 프로그래밍 에서는 필수적이다. 특히 MFC는 Windows API 함수를 기반으로 만들어진거기 때문에 MFC를 사용하기 위해서는 반드시 알아야한다. BOOL : 단일 논리값 ex) 0,1 HANDLE : 커널 객체를 다루기 위한 핸들 ex) pointer와 비슷 DWORD : 정수(int) TCHAR : 문자(char) LPTSTR : 문자열(TCHAR * ) MFC 자료형 COLORREF : RGB값을 나타낼 수 있는 자료형이다. 아래는 예시이다. COLORREF colorValue = RGB(255,255,255); CString : MF..

MFC - CRuntimeClass

기능 클래스 이름을 사용하지 않고 객체를 생성한다. 메모리 상에 객체의 자료형을 검사한다. 메모리 상에 객체의 유효성을 검사한다. 객체 직렬화(Serialization)에 대한 정보를 제공한다. 사용조건 CRuntimeClass 구조체를 이 기능을 사용하려는 클래스의 static 멤버변수로 입력 CRuntimeClass 구조체를 static 멤버변수로 사용하기 위해 3가지 매크로 이용 선언부 : DECLARE_DYNAMIC, DYNCREATE, SERIAL 정의부 : IMPLEMENT_DYNAMIC 나머지 같음 뒤의 매개변수에 따라 기능이 달라짐 CObject로부터 상속받아야 한다. (CObject는 MFC의 최상위 클래스) MFC 내부에서 CRuntimeClass를 이용하는 객체에 접근할 때, CObj..

728x90