/Gw (Globale Daten optimieren)

Fasst globale Daten zur Optimierung in COMDAT-Abschnitten zusammen.

Syntax

/Gw[-]

Hinweise

Die Option "/Gw " bewirkt, dass der Compiler globale Daten in einzelnen COMDAT-Abschnitten packt. Standardmäßig ist /Gw deaktiviert und muss explizit aktiviert sein. Verwenden Sie "/Gw-", um sie explizit zu deaktivieren. Wenn sowohl /Gw als auch /GL aktiviert sind, verwendet der Linker die Optimierung des gesamten Programms, um COMDAT-Abschnitte über mehrere Objektdateien hinweg zu vergleichen, um nicht referenzierte globale Daten auszuschließen oder identische schreibgeschützte globale Daten zusammenzuführen. Dies kann die Größe der resultierenden binären ausführbaren Datei deutlich reduzieren.

Wenn Sie separat kompilieren und verknüpfen, können Sie die Option "/OPT:REF linker" verwenden, um aus der ausführbaren Datei die nicht referenzierten globalen Daten in Objektdateien auszuschließen, die mit der Option "/Gw " kompiliert wurden.

Sie können auch die Optionen "/OPT:ICF " und "/LTCG linker" zusammen verwenden, um alle identischen schreibgeschützten globalen Daten in mehreren Objektdateien zusammenzuführen, die mit der Option /Gw kompiliert wurden.

Weitere Informationen finden Sie in der Einführung in /Gw Compiler Switch im C++-Teamblog.

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

  1. Öffnen Sie das Dialogfeld Eigenschaftenseiten des Projekts. Weitere Informationen erhalten Sie unter Set C++ compiler and build properties in Visual Studio (Festlegen der Compiler- und Buildeigenschaften (C++) in Visual Studio).

  2. Klicken Sie auf der Eigenschaftenseite auf Konfigurationseigenschaften>C/C++>Befehlszeile.

  3. Ändern Sie die Eigenschaft "Zusätzliche Optionen", um "/Gw" einzuschließen, und wählen Sie dann "OK" aus.

So legen Sie diese Compileroption programmgesteuert fest

Siehe auch

MSVC-Compileroptionen
Syntax für die MSVC-Compilerbefehlszeile