/volatile (interpretacja słowa kluczowego volatile)
Określa sposób, w jaki lotnych słowo kluczowe ma być interpretowana.
/volatile:{iso|ms}
Argumenty
/volatile:iso
Wybiera ścisłe volatile semantyka zgodnie z definicją języka C++ normy ISO.Semantyka nabycia/release nie są gwarantowane przy dostępie lotnych.Jeśli kompilator jest przeznaczony dla ARM, jest to interpretacja domyślne volatile./volatile:ms
Wybiera Microsoft extended volatile semantykę, co dodanie pamięci zamawiania gwarancje poza języka C++ normy ISO.Semantyka nabycia/release są gwarantowane przy dostępie lotnych.Wybór tej opcji powoduje także kompilator będzie generował sprzętowe pamięci barier, które może dodać znaczne obciążenie na ARM i innych słabych architektur zamawianie pamięci.Jeśli kompilator jest przeznaczony dla dowolnej platformie, z wyjątkiem ARM, jest to interpretacja domyślne volatile.
Uwagi
Zdecydowanie zaleca się używanie /volatile:iso a także jawne synchronizacyjne i intrinsics kompilatora, gdy mamy do czynienia z pamięci, która jest współużytkowana przez wątki.Aby uzyskać więcej informacji, zobacz lotne (C++).
Jeśli port istniejący kod lub zmienić tę opcję w środku projektu, może być pomocne, aby włączyć ostrzeżenie o C4746 do identyfikowania kodu lokalizacji, których dotyczy różnica w semantyce.
Ma nie #pragma równoważne do kontrolowania tej opcji.
Aby ustawić volatile kompilator opcję w programie Visual Studio
Otwórz Stron właściwości okno dialogowe dla projektu.Aby uzyskać więcej informacji, zobacz Jak: Otwórz strony właściwości projektu.
Wybierz C/C++ folder.
Wybierz wiersza polecenia strona właściwości.
W dodatkowe opcje pole, dodać /volatile:iso lub /volatile:ms.