본문 바로가기

[프로그래밍] 코드 작성 습관 v.0.0.001 코드를 작성하는데에는 알고리즘을 생각하고, 거기에 맞는 자료구조를 짜내어 모든 코드가 유기적, 논리적 일관성을 가지고 작동하도록 하는것이 중요하다. 하지만 그 이전에 코드를 보기 좋게, 일관적인 규칙을 가지고, 다른사람이 봤을때 쉽게 파악할 수 있게 작성하는것 또한 중요하다. 그렇기 때문에 다음과 같은 것들을 생각하여 작성하여 보다 논리적이고, 읽기 쉬운 간단한 코드를 작성하는 연습을 해보는 것 또한 중요하다. 모든 변수는 초기화를 시켜준다. 초기화하지 않은 변수는 가끔 사용자의 착각으로 인해 잘못된 참조를 야기시킬 수 있다. 예를들어 인덱스 번호가 -38492052 인것처럼 모든 동적 메모리는 해제하자. 메모리 누수라는게 참 무섭다. 갑자기 VS가 죽어버린다. 무언가를 생성하면 어디에서 해제 되어야하는.. 더보기
[MFC Dialog] PreTranslateMessage 특정 컨트롤러나 Dialog에 이벤트를 주고 싶다. 하면 그냥 이벤트 등록하면 간단한 일이다. 하지만 특정 부분에 대해서, 세세하게 이벤트를 달아주고 싶다면, 이 방법을 써보자. PreTranslateMessage MSDN - Override this function to filter window messages before they are dispatched to the Windows functions TranslateMessage and DispatchMessage The default implementation performs accelerator-key translation, so you must call the CWinApp::PreTranslateMessage member function in.. 더보기
[MFC] SendMessage 클래스간 데이터 전달을 하는 방법이 무엇이 있을까. 1. 전역변수 2. 헤더 include 후 변수 접근 3. SendMessage SendMessage를 이용하면 클래스간 데이터 전달이 용이함을 알고, 사용해보았다(몇번의 삽질과 함께...) LRESULT SendMessage( UINT message, WPARAM wParam = 0, LPARAM lParam = 0 ) throw(); static LRESULT SendMessage( HWND hWnd, UINT message,// 메시지 이름 WPARAM wParam,// 정수형 포인터 전달인자 LPARAM lParam// 실수형 포인터 전달인자 ) throw(); 주로 static을 쓰게 될텐데... 선언해주어야 하는 파트는 3파트. 1. 메시지 .. 더보기