다음을 통해 공유


section pragma

OBJ 파일에 섹션을 만듭니다.

구문

#pragma section( "section-name " [ , 특성 ])

설명

용어 세그먼트섹션 은 이 문서에서 동일한 의미를 갖습니다.

섹션이 정의되면 나머지 컴파일에 대해 유효한 상태로 유지됩니다. 그러나 반드시 사용해야 __declspec(allocate)합니다. 또는 섹션에 아무 것도 배치되지 않습니다.

section-name 은 섹션의 이름이 되는 필수 매개 변수입니다. 이 이름은 모든 표준 섹션 이름과 충돌하지 않아야 합니다. 섹션을 만들 때 사용하지 않아야 하는 이름 목록을 참조 /SECTION 하세요.

특성 은 섹션에 할당할 하나 이상의 쉼표로 구분된 특성으로 구성된 선택적 매개 변수입니다. 가능한 특성 은 다음과 같습니다.

attribute 설명
read 데이터에 대한 읽기 작업을 허용합니다.
write 데이터에 대한 쓰기 작업을 허용합니다.
execute 코드가 실행될 수 있도록 합니다.
shared 이미지를 로드하는 모든 프로세스에서 섹션을 공유합니다.
nopage 섹션을 페이지를 표시할 수 없음으로 표시합니다. Win32 디바이스 드라이버에 유용합니다.
nocache 섹션을 캐시할 수 없는 것으로 표시합니다. Win32 디바이스 드라이버에 유용합니다.
discard 섹션을 삭제 가능으로 표시합니다. Win32 디바이스 드라이버에 유용합니다.
remove 섹션을 메모리 상주하지 않음으로 표시합니다. 가상 디바이스 드라이버(VxD)만 해당합니다.

특성을 지정하지 않으면 섹션에 특성과 특성이 read 있습니다 write .

예시

이 예제에서 첫 번째 섹션 pragma 은 섹션과 해당 특성을 식별합니다. 을 사용하여 __declspec(allocate)선언되지 않았기 때문에 정수 j 는 입력 mysec 되지 않습니다. 대신 데이터 j 섹션으로 이동합니다. i 정수는 스토리지 클래스 특성으로 인해 __declspec(allocate) 들어갑니다mysec.

// pragma_section.cpp
#pragma section("mysec",read,write)
int j = 0;

__declspec(allocate("mysec"))
int i = 0;

int main(){}

참고 항목

Pragma 지시문 및 __pragma _Pragma 키워드