Udostępnij za pośrednictwem


/Og (Optymalizacje globalne)

Zapewnia optymalizacje lokalne i globalne, automatyczne — rejestracja alokacji i optymalizacji w pętli.Przestarzałe.

/Og

Uwagi

Dostępne są następujące optymalizacji:

  • Lokalne i globalne typowe wyrażenia cząstkowego eliminacji

    W tym optymalizacji wartość typowe wyrażenia cząstkowego jest obliczana jeden raz.W poniższym przykładzie Jeśli wartości b i c nie należy zmieniać między trzy wyrażenia, kompilator można przypisać do obliczania b + c do zmiennej tymczasowej i zastąpić zmienną dla b + c:

    a = b + c;
    d = b + c;
    e = b + c;
    

    Lokalne typowe wyrażenia cząstkowego optymalizacji kompilator sprawdza krótkie odcinki kodu dla typowych browserCaps.Dla globalnego typowe wyrażenia cząstkowego optymalizacji kompilator przeszukuje cały funkcje dla typowych browserCaps.

  • Automatyczna rejestracja alokacji

    Optymalizacja pozwala kompilator do przechowywania często używanych zmiennych i browserCaps w rejestrach; register słowo kluczowe jest ignorowana.

  • Optymalizacja pętli

    Optymalizacja usuwa niezmienną browserCaps z treści pętli.Optymalne pętli zawiera tylko wyrażenia, w których wartości zmieniają się za pośrednictwem każdego wykonywanie pętli.W poniższym przykładzie wyrażenie x + y nie powoduje zmiany w treści pętli:

    i = -100;
    while( i < 0 ) {
        i += x + y;
    }
    

    Po optymalizacji x + y jest obliczana jeden raz, a nie zawsze jest wykonywane w pętli:

    i = -100;
    t = x + y;
    while( i < 0 ) {
        i += t;
    }
    

    Optymalizacja pętli jest znacznie bardziej skuteczna, gdy kompilator może przyjmować nie wygładzania, który zestaw z __restrict, noalias, lub ograniczyć.

    [!UWAGA]

    Można włączyć lub wyłączyć optymalizacji globalnej na podstawę funkcji przez funkcję za pomocą optimize pragma z g opcji.

/OgPonadto umożliwia optymalizację o nazwie zwraca wartość, która eliminuje Konstruktor i destruktor zwracanej wartości oparte na stosie.Aby uzyskać więcej informacji, zobacz /O1, /O2 (Minimalizuj rozmiar, maksymalizuj szybkość).

Aby uzyskać pokrewne informacje, zobacz Generowanie funkcji wewnętrznych (/Oi) i Pełna optymalizacja (/ Ox).

/Ogzostała zaniechana; use either /O1 or /O2.Aby uzyskać dodatkowe informacje, zobacz Deprecated Compiler Options.

Aby ustawić tę opcję kompilatora w środowisku programowania Visual Studio

  1. Otwórz okno dialogowe Strony właściwości projektu.Szczegółowe informacje – zobacz: Porady: otwieranie stron właściwości projektów.

  2. Kliknij folder C/C++.

  3. Kliknij stronę właściwości Wiersz polecenia.

  4. Wpisz opcje kompilatora w polu Dodatkowe opcje.

Aby programowo ustawić tę opcję kompilatora

Zobacz też

Informacje

/O Opcje (optymalizuj kod)

Opcje kompilatora

Ustawianie opcji kompilatora