Freigeben über


/Oi (Systeminterne Funktionen erstellen)

Aktualisiert: November 2007

Diese Option ersetzt einige Funktionsaufrufe durch systeminterne oder sonstige spezielle Formen der Funktion, die dazu beitragen, dass die Arbeitsgeschwindigkeit der Anwendung erhöht wird.

/Oi[-]

Hinweise

Programme, die systeminterne Funktionen verwenden, sind von verkürzter Laufzeit geprägt, weil der Verwaltungsaufwand von Funktionsaufrufen entfällt, aber sie können wegen des zusätzlich erstellten Codes größer sein.

Weitere Informationen darüber, welche Funktionen über systeminterne Formen verfügen, finden Sie unter intrinsic.

/Oi ist lediglich eine Anforderung an den Compiler, bestimmte Funktionsaufrufe mit systeminternen Funktionen zu ersetzen. Die Funktion wird möglicherweise vom Compiler aufgerufen (und nicht durch eine systeminterne ersetzt), wenn dadurch eine bessere Leistung erzielt wird.

x86-spezifisch

Da die systeminternen Gleitkommafunktionen die Eingabewerte nicht gründlich prüfen, arbeiten sie in beschränkten Eingabebereichen und haben eine andere Ausnahmebehandlung und andere Grenzwertbedingungen als die gleichnamigen Bibliotheksroutinen. Die Verwendung der echten systeminternen Formen impliziert den Verlust der Ausnahmebehandlung nach IEEE sowie den Verlust der _matherr und errno-Funktionen. Letztere implizieren den Verlust der ANSI-Konformität. Die systeminternen Funktionen können jedoch Programme mit intensiven Gleitkommaberechnungen erheblich beschleunigen, und für viele Programme hat die Konformität wenig praktische Bedeutung.

Mithilfe von /Za, /Ze (Spracherweiterungen deaktivieren) können Sie die Erzeugung echter systeminterner Gleitkommaoptionen überschreiben. In diesem Fall werden die Funktionen als Bibliotheksfunktionen erzeugt, die die Argumente direkt an den Gleitkommachip übergeben, statt sie in den Programmstapel abzulegen.

END x86-spezifisch

Sie können außerdem intrinsic dazu verwenden, systeminterne Funktionen zu erstellen, oder function (C/C++), um einen Funktionsaufruf explizit zu erzwingen.

So legen Sie diese Compileroption in der Visual Studio-Entwicklungsumgebung fest

  1. Öffnen Sie das Dialogfeld Eigenschaftenseiten des Projekts. Ausführliche Informationen finden Sie unter Gewusst wie: Öffnen von Projekteigenschaftenseiten.

  2. Klicken Sie auf den Ordner C/C++.

  3. Klicken Sie auf die Eigenschaftenseite Optimierung.

  4. Ändern Sie die Eigenschaft Systeminterne Funktionen aktivieren.

So legen Sie diese Compileroption programmgesteuert fest

Siehe auch

Referenz

/O-Optionen (Code optimieren)

Compileroptionen

Festlegen von Compileroptionen

Compiler Intrinsics