/GF (Hilangkan String Duplikat)
Memungkinkan pengkompilasi membuat satu salinan string yang identik dalam gambar program dan dalam memori selama eksekusi. Ini adalah pengoptimalan yang disebut pengumpulan string yang dapat membuat program yang lebih kecil.
Sintaks
/GF
Keterangan
Jika Anda menggunakan /GF, sistem operasi tidak menukar bagian string memori dan dapat membaca kembali string dari file gambar.
String kumpulan /GF sebagai baca-saja. Jika Anda mencoba mengubah string di bawah /GF, kesalahan aplikasi terjadi.
Pengumpulan string memungkinkan apa yang dimaksudkan sebagai beberapa penunjuk ke beberapa buffer menjadi beberapa penunjuk ke satu buffer. Dalam kode berikut, s
dan t
diinisialisasi dengan string yang sama. Pengumpulan string menyebabkan mereka menunjuk ke memori yang sama:
char *s = "This is a character buffer";
char *t = "This is a character buffer";
Catatan
Opsi /ZI , yang digunakan untuk Edit dan Lanjutkan, secara otomatis mengatur opsi /GF .
Catatan
Opsi pengkompilasi /GF membuat bagian yang dapat diatasi untuk setiap string unik. Dan secara default, file objek dapat berisi hingga 65.536 bagian yang dapat diatasi. Jika program Anda berisi lebih dari 65.536 string, gunakan opsi /bigobj compiler untuk membuat lebih banyak bagian.
/GF berlaku ketika /O1 atau /O2 digunakan.
Untuk mengatur opsi pengkompilasi ini di lingkungan pengembangan Visual Studio
Buka kotak dialog Halaman Properti proyek. Untuk detailnya, lihat Mengatur pengkompilasi C++ dan membuat properti di Visual Studio.
Pilih halaman properti Properti>Konfigurasi C/C++>Code Generation.
Ubah properti Aktifkan Kumpulan String.
Untuk mengatur opsi pengkompilasi ini secara terprogram
- Lihat StringPooling.
Lihat juga
Opsi Pengkompilasi MSVC
Sintaks Baris Perintah Pengkompilasi MSVC