Udostępnij za pośrednictwem


section

Tworzy plik .obj sekcji.

#pragma section( "section-name" [, attributes] )

Uwagi

Znaczenie terminów segment i sekcji są wymienne, w tym temacie.

Po sekcji jest zdefiniowana, pozostaje ważne do końca kompilacji.Jednakże, należy użyć __declspec(allocate) lub nic nie zostaną umieszczone w sekcji.

Nazwa sekcji jest wymagany parametr, który będzie nazwą sekcji.Nazwa nie może powodować konfliktu z nazwy sekcji standardowych.Zobacz /Section do listy nazw nie należy używać podczas tworzenia sekcji.

attributesopcjonalny parametr składający się z jednego lub kilku oddzielone przecinkami atrybutów, które chcesz przypisać do sekcji.Możliwe attributes są:

  • Odczyt
    Zezwala na operacje odczytu danych.

  • zapis
    Zezwala na operacje zapisu danych.

  • wykonanie
    Pozwala na wykonanie kodu.

  • udostępnione
    Udziały sekcji między wszystkie procesy, które ładują obrazu.

  • nopage
    Znaki sekcji jako nie stronicowanej; przydatne dla sterowników urządzeń systemu Win32.

  • NoCache
    Znaki sekcji jako nie przez HTTP.sys; przydatne dla sterowników urządzeń systemu Win32.

  • Odrzuć
    Znaki sekcji jako discardable; przydatne dla sterowników urządzeń systemu Win32.

  • Usuń
    Znaki sekcji jako nie rezydentny; sterowniki urządzeń wirtualnych (VxD) tylko.

Jeśli nie określisz atrybuty, sekcja będzie mieć odczytu i zapisu atrybutów.

Przykład

W poniższym przykładzie pierwsza instrukcja identyfikuje sekcji i jego atrybuty.Liczba całkowita j nie jest umieszczana w mysec , ponieważ nie została zadeklarowana z __declspec(allocate); jPrzechodzi do sekcji danych.Liczba całkowita i go do mysec w wyniku jego __declspec(allocate) atrybut klasy magazynowania.

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

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

int main(){}

Zobacz też

Informacje

Dyrektywy pragma i __Pragma słowa kluczowego