[windows] 절대 무시하면 안되는 warning들

- C4390 empty controlled statement found; is this the intent?

if (bFind==TRUE);
{
function();
}
if문의 여부와 상관없이 function()이 무조건 실행된다.

-

-C4520 multiple default constructors specified.
디폴트 생성자가 중복정의 되었을 때

CClass();
CClass(int value = 1);

-C4552 operator has no effect, expected operator with side-effect
의미없는 연산. 실수로 =을 생략한 경우가 많다.
if(bPlus == TRUE)
nValue + 2;

-C4715 :not all control paths return a value
리턴값이 존재하는 함수에서 리턴값 없이 종료되는 케이스가 존재. 함수 종료 후 잘못된 메모리 참조 오류가 발생할 수 있다.
BOOL func()
{
if (bSucc = TRUE)
{
return TRUE;
}
}


[Win32] 윈도우 그림자 주기 프로그래밍

DWORD classLong = GetClassLong(g_hWndMain, GCL_STYLE);
classLong = classLong | CS_DROPSHADOW;
SetClassLong(g_hWndMain, GCL_STYLE, classLong);


[Win32] 모서리가 둥근 WIndow 만들기 프로그래밍


HRGN hRgn1 = CreateRoundRectRgn(0,0,GUIDE_WINDOW_WIDTH,GUIDE_WINDOW_HEIGHT,10,10);
SetWindowRgn(hDlg, hRgn1, TRUE);


[MFC] ctrl키가 눌렸는지 확인 프로그래밍

#define isCtrlPressed() ((GetKeyState(VK_CONTROL) & (1 << (sizeof(SHORT)*8-1))) != 0 )

[WINDOW] 이 컴퓨터의 기본 프로그램 설정 Dialog띄우기 프로그래밍


rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,3

정규표현식 요약 프로그래밍

기본 문자
.(dot) : 모든문자
|(or) : 또는 A|B = A 또는 B
[] : 집합 [ABC] A 또는 B 또는 C
[^] : 예외 집합 [^A] A를제외하고
[]안에서 - : 범위 [가-힣] 한글 전체
\ : 다음 문자를 이스케입

수량자
* : 0, 하나 이상  문자 찾기 {0,n} a* 는 없음 또는 a 또는 aaaaaa....
*? : 검색의 범위가 좁은 *
+ : 하나이상 문자 찾기 {1,n} a+ 는 a또는 aa............
+? : 검색의 범위가 좁은 *
? : 문자가 없거나 1개 {0,1} a? 는 없음 또는 a

{n} : n개일치 a{3}는 aaa
{n,m} : n~m개 일치 a{3,4}는 aaa 또는 aaaa
{n,} : n개 이상일치

위치지정
^ : 문자열의 시작
$ : 문자열의 끝
\b : 단어의 경계
\B : \b의 반대

특수 문자들
\d : 모든 숫자
\D : \d의 반대
\s : 공백문자들
\S : \s의 반대
\w : 영문,숫자,밑줄과 일치 [A-Za-z0-9_]
\W : \w의 반대

() : 하위 표현식
\1 : 첫번째로 일치한 하위 표현식



1