conform
pragma
Specyficzne dla języka C++
Określa zachowanie w czasie wykonywania opcji kompilatora /Zc:forScope
.
Składnia
#pragma conform(
name [ ] [,
, show
{on
off
| } ] [ [,
{push
|pop
} ] [,
identyfikator [,
{on
|off
} ])
Parametry
name
Określa nazwę opcji kompilatora, która ma zostać zmodyfikowana. Jedyną prawidłową nazwą jest forScope
.
show
(Opcjonalnie) Powoduje wyświetlenie bieżącego ustawienia nazwy (true lub false) za pomocą komunikatu ostrzegawczego podczas kompilacji. Na przykład #pragma conform(forScope, show)
.
on
, off
(Opcjonalnie) Nazwa ustawienia umożliwiająca on
włączenie opcji /Zc:forScope kompilatora. Wartość domyślna to off
.
push
(Opcjonalnie) Wypycha bieżącą wartość nazwy do wewnętrznego stosu kompilatora. Jeśli określisz identyfikator, możesz określić on
wartość lub off
, aby nazwa została wypchnięta do stosu. Na przykład #pragma conform(forScope, push, myname, on)
.
pop
(Opcjonalnie) Ustawia wartość nazwy na wartość w górnej części wewnętrznego stosu kompilatora, a następnie popsuje stos. Jeśli zostanie określony identyfikator z parametrem pop
, stos zostanie zwinięty z powrotem do momentu znalezienia rekordu z identyfikatorem, który również zostanie zwinięty. Bieżąca wartość nazwy w następnym rekordzie na stosie stanie się nową wartością nazwy. Jeśli określisz pop
identyfikator, który nie znajduje się w rekordzie na stosie, pop
element zostanie zignorowany.
identifier
(Opcjonalnie) Może być dołączany do polecenia push
lub pop
. Jeśli jest używany identyfikator , można również użyć specyfikatora on
lub off
.
Przykład
// pragma_directive_conform.cpp
// compile with: /W1
// C4811 expected
#pragma conform(forScope, show)
#pragma conform(forScope, push, x, on)
#pragma conform(forScope, push, x1, off)
#pragma conform(forScope, push, x2, off)
#pragma conform(forScope, push, x3, off)
#pragma conform(forScope, show)
#pragma conform(forScope, pop, x1)
#pragma conform(forScope, show)
int main() {}