WIN32API FrameWork/코드별 설명 개별저장(검색용)

static LRESULT WndProc , static m_Loop

hyrule 2022. 5. 3. 15:41

* m_Loop

루프 지속 여부를 확인할 변수


- static 변수로 선언한 이유

static 함수는 static 변수만 처리 가능하다.
계속 루프를 할 지 여부는 메시지를 통해 결정해야 한다.
메시지 루프 처리는 WinProc 함수에서 진행한다.
WinProc는 static 함수이다 
-> 일반 선언 변수는 처리가 불가능하고
static 변수만 처리 가능하기 때문에 아래 변수를
static으로 선언한 것

static bool	m_Loop;
static LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    //WIN32API 기본 코드에서 가져온 내용
    // 
    //message 큐로부터 받은 message에 따라 어떤 동작을 할지 결정.
    switch (message)
    {
    case WM_DESTROY:
        m_Loop = false;
        PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hWnd, message, wParam, lParam);
    }
    return 0;
}