/GF (odstranění duplicitních řetězců)
Umožňuje kompilátor vytvoří jednu kopii shodné řetězce v bitovou kopii programu a v paměti během spuštění.To se nazývá optimalizace sdružování řetězec , můžete vytvořit menší programy.
/GF
Poznámky
Použijete-li /GF, nelze zaměnit řetězec část paměti operačního systému a může číst zpět řetězce ze souboru bitové kopie.
/GFfondy řetězce jako jen pro čtení.Pokud se pokusíte změnit řetězce v /GF, dojde k chybě aplikace.
Řetězec sdružování umožňuje co byly určeny jako více odkazy na několik vyrovnávacích pamětí se více ukazatelů do jedné vyrovnávací paměti.V následujícím kódu s a t jsou inicializovány s stejný řetězec.Řetězec sdružování způsobuje jejich přejděte na stejnou paměť:
char *s = "This is a character buffer";
char *t = "This is a character buffer";
[!POZNÁMKA]
/ZI používán pro Edit and Continue, automaticky se nastaví /GF možnost.
[!POZNÁMKA]
/GF Vytvoří kompilátor možnost adresovat oddíl pro každý jedinečný řetězec.A výchozí soubor objektu může obsahovat maximálně 65 536 adresovatelných bodů.Pokud váš program obsahuje více než 65 536 řetězců, použijte /bigobj kompilátor možnost vytvořit další oddíly.
/GFje v účinku po /O1 nebo /O2 se používá.
Chcete-li nastavit tuto možnost kompilátoru ve vývojovém prostředí Visual Studio
Otevřete dialogové okno projektu Stránky vlastností.Další informace naleznete v tématu Postupy: Otevření stránek vlastností projektu.
Klikněte na složku C/C++.
Klikněte na stránku vlastností Generování kódu.
Změnit Enable String Pooling vlastnost.
Chcete-li tuto možnost kompilátoru nastavit v programu
- Další informace naleznete v tématu StringPooling.