Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Vytvoří oddíl v souboru OBJ.
Syntaxe
#pragma section( "section-name"[,atributy ])
Poznámky
Segment termínů a oddíl mají stejný význam v tomto článku.
Jakmile je oddíl definovaný, zůstane platný pro zbytek kompilace. Je však nutné použít __declspec(allocate), nebo se v oddílu nic nesloží.
section-name je povinný parametr, který se stane názvem oddílu. Název nesmí být v konfliktu s žádnými standardními názvy oddílů. Podívejte /SECTION se na seznam názvů, které byste neměli používat při vytváření oddílu.
atributy jsou volitelný parametr, který se skládá z jednoho nebo více atributů oddělených čárkami, které se mají přiřadit k oddílu. Možné atributy jsou:
| Atribut | Popis |
|---|---|
read |
Umožňuje operace čtení dat. |
write |
Umožňuje operace zápisu dat. |
execute |
Umožňuje spuštění kódu. |
shared |
Sdílí oddíl mezi všemi procesy, které načítají image. |
nopage |
Označí oddíl jako nestránitelný. Užitečné pro ovladače zařízení Win32. |
nocache |
Označí oddíl jako neupamětelný. Užitečné pro ovladače zařízení Win32. |
discard |
Označí oddíl jako zahozený. Užitečné pro ovladače zařízení Win32. |
remove |
Označí oddíl jako oddíl, který není rezidentem paměti. Pouze pro ovladače virtuálních zařízení (VxD). |
Pokud nezadáte žádné atributy, oddíl má read a write atributy.
Příklad
V tomto příkladu první část pragma identifikuje oddíl a jeho atributy. Celé číslo j není vloženo mysec , protože nebylo deklarováno pomocí __declspec(allocate).
j Místo toho přejde do datového oddílu. Celé číslo i se dostane mysec z důvodu atributu __declspec(allocate) třídy úložiště.
// pragma_section.cpp
#pragma section("mysec",read,write)
int j = 0;
__declspec(allocate("mysec"))
int i = 0;
int main(){}