MFC 4

[Gdiplus::Graphics] 최적화 관련 팁 정리

사내 신규 개발항목에서 성능이슈가 발생했다.그래서 끌려갔다 ( 거 그만좀 갖다 써... ) 주요 내용은 Gdiplus::Graphics 항목으로 DrawImage 대상이 늘어나면 성능하락이 심각하다는 것이다.이에 관련해 찾아본 내용을 간단하게 정리해둔다.  Gdiplus::CompositingMode 설정: 투명도(alpha)가 없는 불투명한 비트맵(특히 32비트 비트맵의 경우)을 사용하는 경우, DrawImage() 호출 전에 Graphics.CompositingMode를 CompositingMode.SourceCopy로 설정하세요. 그래야 픽셀 단위의 불필요한 혼합 계산을 건너뛸 수 있습니다. 설정 후에는 꼭 원래 값으로 되돌려주세요. 그렇지 않으면 일반적인 드로잉 프리미티브가 보기 흉하게 보일 수 ..

MFC 2025.02.18

char, wchar, tchar 에 대해서

- char character 로써 1Byte(8bit) 크기의 문자 타입이다. - wchar wide character 로써 2Byte(16bit) 크기의 문자 타입이다. - tchar char 혹은 wchar 를 상황에 맞게 자율 변환 하는 문자 타입이다. - 주석 - 1. char 의 8bit 중 7bit를 사용해서 아스키코드를 표현한다. 1bit는 오류 검출용으로 사용을 했었다. 2. 기존 1Byte 의 문자 타입의 크기로는 모든 언어를 표헌할 수 없었다. (한글, 일어 등) 따라서 2Byte 크기의 문자 타입이 필요해서 wide character 가 추가 되었다.

MFC 2019.01.22

LP, T, C, STR 등에 대하여

LPSTR, LPCSTR, LPTSTR, LPCTSTR, LPWSTR, LPCWSTR 등 너무 많다. -- 서론 -- C, C++ 은 String 자료 구조형 자체를 지원하지 않는다고 한다. (compiler 차원에서) String을 어떻게 사용할지 고민한 결과 : 64bit pointer VC++6.0 이전 -> 32bit pointer 과거 -> 16bit pointer ( 24bit 메모리관리를 LP를 통해 extended memory(연속 확장 메모리) 라는 이름으로 관리 했다고 한다. ) (뭔소리여...) -C 함수 내부에서 인자값을 변경하지 말라는 뜻 -W wide char 를 의미 (2Byte) -> unicode. -STR string 형태로 쓸거라는 뜻 내부적으로 char형 배열 + nu..

MFC 2019.01.22

[MFC] TCHAR에 관하여

- TCHAR 란? 1. MS(microsoft 이하 마소)에서 전세계의 언어에 맞춰 개발하는 것이 짜증남. 2. windows를 unicode 기반으로 개발하기 시작. 3. char 와 wide char 의 크기 차이가 발생 ( 1byte : 2byte ) ( 포인터 연산을 많이 하는 c, c++ 에서 치명적 ) 4. 컴파일러가 precompile option을 기준으로 동작하도록 새로운 변수 모양의 Macro를 선언 -> 요것이 바로 TCHAR, t_char 인 것이다! - type casting multi-byte : char unicode : w_char, wide char MFC 기반 CString - CString to TCHAR 형 변환 // 선언 CString cstr; // 형 변환 TC..

MFC 2019.01.22
반응형