์ ํ๊ณต์ ์ข์ ์ ๋ฐ์ ๋ง๋ ๋ค. ์๋ํ๋ฉด ์ ๋ฐ ์ด์ธ์ ๊ฒ์ ์๋ฌด ๊ฒ๋ ๋ง๋ค์ง ์๊ธฐ ๋๋ฌธ์ด๋ค. -์๋จธ์จ
๏ปฟ
Contents
- 1 ๋๋ฒ๊ทธ๋ฒ์ ์ผ๋ก ์์ ํ ๋ visual studio์ ๋๋ฒ๊ทธ ์ฐฝ์ ํน์ ๋ฌธ์์ด์ ์ถ๋ ฅํ๊ณ ์ถ์ ๋
- 2 ์๋์ฐ ํ๋ก์์ ธ์ ๊ฐ์ด HINSTANCE๊ฐ์ ์ป์ ์ ์๊ณ ์๋์ฐ ํธ๋ค๋ง ์ป์ ์ ์๋ ๋ถ๋ถ์์ ํ์ฌ ํ๋ก๊ทธ๋จ ์ธ์คํด์ค ํธ๋ค์ ์ป๋ ๋ฐฉ๋ฒ
- 3 ํน์ warning์ด ์๊พธ ๋ฐ์ํ๋๋ฐ ์ด๋ฅผ ์์ ๊ณ ์ถ์ผ๋ฉด?
- 4 VC์์ ์์ค์์๋ค๊ฐ ์ฌ์ฉํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ํ๊ณ ์ถ์ผ๋ฉด?
1 ๋๋ฒ๊ทธ๋ฒ์ ์ผ๋ก ์์ ํ ๋ visual studio์ ๋๋ฒ๊ทธ ์ฐฝ์ ํน์ ๋ฌธ์์ด์ ์ถ๋ ฅํ๊ณ ์ถ์ ๋ #
OutputDebugString() API ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค. ์ด API๋ visual studio์์๋ง ์ฌ์ฉ๊ฐ๋ฅํ๋ฉฐ mingw/gcc์์๋ ์๋ฌด๋ฐ ์ญํ ์ ํ์ง ์์ต๋๋ค. ์ข๋ ๊น๋ํ๊ฒ ์์ฑํ๊ณ ์ถ๋ค๋ฉด
IsDebuggerPresent() API๋ฅผ ์ฌ์ฉํ์ฌ ๋๋ฒ๊น
์ฌ๋ถ๋ฅผ ๊ฒ์ฌํด๋ ์ข์ต๋๋ค. ๊ฑฐ์ ์ฌ์ฉ๋์ง ์์ง๋ง
DebugBreak()์ ํ์ฉํด์ ๊ฐ์ ๋ก breakpoint๋ฅผ ์ง์ ํ ๊ฒ ๊ฐ์ด ์คํํ ์๋ ์์ต๋๋ค.
2 ์๋์ฐ ํ๋ก์์ ธ์ ๊ฐ์ด HINSTANCE๊ฐ์ ์ป์ ์ ์๊ณ ์๋์ฐ ํธ๋ค๋ง ์ป์ ์ ์๋ ๋ถ๋ถ์์ ํ์ฌ ํ๋ก๊ทธ๋จ ์ธ์คํด์ค ํธ๋ค์ ์ป๋ ๋ฐฉ๋ฒ #
GetWindowLong() ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค. ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์ ์ต๋๋ค.
HINSTANCE hInst = (HINSTANCE)GetWindowLong(hwnd, GWL_HINSTANCE);
3 ํน์ warning์ด ์๊พธ ๋ฐ์ํ๋๋ฐ ์ด๋ฅผ ์์ ๊ณ ์ถ์ผ๋ฉด? #
#pragma ํค์๋๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด, 4507 ๋ฒ warning์ ์์ ๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํ๋ฉด ๋ฉ๋๋ค.
#pragma warning( disable : 4507 )
4 VC์์ ์์ค์์๋ค๊ฐ ์ฌ์ฉํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ํ๊ณ ์ถ์ผ๋ฉด? #
์ญ์ #pragma ํค์๋๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค. ์๋๋ opengl32.lib๋ฅผ ๋งํฌํ๋๋ก ํ๋ ๋ช
๋ น์
๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ํ๋ก๊ทธ๋จ->settings ์ต์
์์ ๋ณ๋๋ก ๋งํฌ๋ฅผ ์ฃผ์ง ์์๋ ๋ฉ๋๋ค.
#pragma comment( lib : opengl32.lib )









