Udostępnij za pośrednictwem


bss_seg

Określa, gdzie niezainicjowane zmienne są przechowywane w pliku .obj.

#pragma bss_seg( [ [ { push | pop }, ] [ identifier, ] ] [ "segment-name" [, "segment-class" ] )

Uwagi

Pliki OBJ mogą być wyświetlane w aplikacji dumpbin.Segmentem domyślnym w pliku .obj niezainicjowanych danych jest .bss.W pewnych przypadkach, użycie bss_seg może skrócić czas ładowania przez grupowanie niezainicjowanych danych w jednej sekcji.

bss_seg bez parametrów resetuje segment do .bss.

  • push(opcjonalnie)
    Umieszcza rekord w wewnętrznym stosie kompilatora.push może mieć identifier i segment-name.

  • pop (opcjonalnie)
    Usuwa rekord z góry wewnętrznego stosu kompilatora.

  • identifier (opcjonalnie)
    Gdy używany z push, przypisuje nazwę dla rekordu w wewnętrznym stosie kompilatora.Gdy używany z pop, zdejmuje rekordy z wewnętrznego stosu, aż do usunięcia identifier; jeśli identifier nie zostanie odnaleziony na wewnętrznym stosie, nic nie zostanie zdjęte ze stosu.

    Identifier pozwala na zdjęcie ze stosu wielu rekordów z użyciem pojedynczego polecenia pop.

  • "segment-name"(opcjonalnie)
    Nazwa segmentu*.* Gdy używana z pop, następuje zdejmowanie ze stosu i segment-name staje się aktywną nazwą segmentu.

  • "segment-class" (opcjonalnie)
    Włączone dla zgodności z C++ w wersjach wcześniejszych niż 2.0.Jest to ignorowane.

Przykład

// pragma_directive_bss_seg.cpp
int i;                     // stored in .bss
#pragma bss_seg(".my_data1")
int j;                     // stored in "my_data1"

#pragma bss_seg(push, stack1, ".my_data2")   
int l;                     // stored in "my_data2"

#pragma bss_seg(pop, stack1)   // pop stack1 from stack
int m;                     // stored in "stack_data1"

int main() {
}

Można również określić sekcje dla danych zainicjowanych (data_seg), funkcji (code_seg) i stałych zmiennych (const_seg).

Dane przydzielone za pomocą pragmy bss_seg nie zachowują żadnych informacji o jej lokalizacji.

Zobacz /SECTION, aby uzyskać listę nazw, których nie należy używać przy tworzeniu sekcji.

Zobacz też

Informacje

Dyrektywy pragma i słowo kluczowe __Pragma