Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Создает раздел в OBJ-файле.
Синтаксис
#pragma section( "имя"раздела [,атрибуты ])
Замечания
Сегмент терминов и раздел имеют то же значение в этой статье.
После определения раздела он остается допустимым для остальной части компиляции. Тем не менее, необходимо использовать __declspec(allocate)или ничего не помещается в раздел.
имя раздела — это обязательный параметр, который становится именем раздела. Имя не должно конфликтовать со стандартными именами раздела. Список /SECTION имен, которые не следует использовать при создании раздела.
атрибуты — это необязательный параметр, состоящий из одного или нескольких атрибутов, разделенных запятыми, для назначения разделу. Возможные атрибуты :
| Атрибут | Description |
|---|---|
read |
Позволяет выполнять операции чтения данных. |
write |
Позволяет выполнять операции записи данных. |
execute |
Позволяет выполнять код. |
shared |
Предоставляет совместный доступ к разделу всем процессам, загружающим образ. |
nopage |
Помечает раздел как недоступный для страницы. Полезно для драйверов устройств Win32. |
nocache |
Помечает раздел как недоступный для кэширования. Полезно для драйверов устройств Win32. |
discard |
Помечает раздел как отменяемый. Полезно для драйверов устройств Win32. |
remove |
Помечает раздел как не резидентный в памяти. Только для драйверов виртуальных устройств (VxD). |
Если атрибуты не указаны, раздел содержит read и write атрибуты.
Пример
В этом примере первый раздел определяет раздел pragma и его атрибуты. Целое число j не помещается mysec , так как оно не было объявлено с помощью __declspec(allocate). Вместо этого j перейдите в раздел данных. Целое число i переходит в mysec силу атрибута __declspec(allocate) класса хранилища.
// pragma_section.cpp
#pragma section("mysec",read,write)
int j = 0;
__declspec(allocate("mysec"))
int i = 0;
int main(){}
См. также
директивы Pragma и ключевые слова __pragma и _Pragma