/GF (Yinelenen Dizeleri Ele)
Yürütme sırasında program görüntü ve bellek aynı dize tek bir kopyasını oluşturmak derleyici sağlar.Bu adlı bir hale getirilmesidir dize havuzu küçük programlar oluşturabilirsiniz.
/GF
Notlar
Kullanırsanız, /GF, işletim sistemi bellek dizesi bölümü kaydırmaz ve dizeleri geri görüntü dosyasından okuyabilirsiniz.
/GFsalt okunur olarak havuzları dizeleri.Altında dizeleri değiştirmeye çalışırsanız, /GF, bir uygulama hatası ortaya çıkar.
Dize havuzu ne birden çok arabellek için birden fazla işaretçiler olarak tek bir arabelleğe çoklu işaretçiler olması planlanan sağlar.Aşağıdaki kodda, s ve t aynı dize ile başlatılır.Dize havuzu aynı bellek için işaret etmek onları neden olur:
char *s = "This is a character buffer";
char *t = "This is a character buffer";
[!NOT]
/ZI seçeneği, Düzenle ve devam et, için kullanılan ayarlar otomatik olarak /GF seçeneği.
[!NOT]
/GF Derleyici seçeneği, her benzersiz bir dize için adreslenebilir bölümü oluşturur.Ve varsayılan olarak, bir nesne dosyası en fazla 65.536 adreslenebilir bölümleri içerebilir.Programınızı birden fazla 65.536 dizeler içeriyorsa, /bigobj daha fazla bölüm oluşturmak için derleyici seçeneği.
/GFBuna efekt olan /O1 veya /O2 kullanılır.
Visual Studio geliştirme ortamındaki bu derleyici seçeneğini ayarlamak için
Projenin Özellik Sayfaları iletişim kutusunu açın.Ayrıntılar için bkz. Nasıl Yapılır: Proje Özellik Sayfalarını Açma.
C/C++ klasörünü tıklatın.
' I Kod oluşturma özellik sayfası.
Değiştirme Dize kuyruğunu etkinleştir özelliği.
Bu derleyici seçeneğini program üzerinden ayarlamak için
- Bkz. StringPooling.