1. pragma란
사전적 의미로 만능이란 의미를 가진다.
VS C++에서 컴파일러에게 그 뒤에 오는 내용에 따라 어떤 일을 하라는 전처리 명령어로 사용된다.
2. 종류
(1) #pragma once
한번 컴파일 되면 더이상 컴파일 하지 않는다.
(2) #pragma comment(lib, "ws2_32")
obj 파일에 커멘트를 남기라는 명령어. 이 명령어는 linker가 그 obj파일을 처리할 때 읽힌다.
특히, 위와 같은 경우는 해당 라이브러리를 library dependencies list에 추가하라는 뜻이다.
( 이는 프로젝트 속성 창 -> Linker -> Input -> Additional Dependencies 에서 추가하는 것과 같은 기능을 한다.)
(3) #pragma pack(n)
n에 1, 2, 4, 8 등이 올 수 있으며 이는 네트워크 통신을 개발할 때 구조체 멤버들을 align하는 데 사용된다.
(4) #pragma warning
컴파일시에 어떤 조건(#if, #ifndef) 에 의해 개발자에게 어떤 것을 알려주고 싶을 경우 사용한다.
( more about Pragma Directives )
https://docs.microsoft.com/en-us/previous-versions/visualstudio/visual-studio-2013/7f0aews7(v=vs.120)
'c++' 카테고리의 다른 글
컴퓨터 메모리 종류와 메모리 영역 (1) | 2019.01.07 |
---|---|
[C++]메타 템플릿 프로그래밍 (0) | 2018.12.17 |