Bagikan melalui


Halaman Properti C/C++

Halaman properti berikut ditemukan di bawah Properti Properti>Proyek>Properti>Konfigurasi C/C++:

Properti Umum C/C++

Sertakan Direktori Tambahan

Menentukan satu atau beberapa direktori untuk ditambahkan ke jalur yang termasuk. Pisahkan direktori dengan titik koma (';') jika ada lebih dari satu. /I Mengatur opsi pengkompilasi (Tambahan termasuk direktori).

Direktori #using Tambahan

Menentukan satu atau beberapa direktori untuk dicari guna mengatasi nama yang #using diteruskan ke direktif. Pisahkan direktori dengan titik koma (';') jika ada lebih dari satu. /AI Mengatur opsi pengkompilasi.

Direktori BMI tambahan

Menentukan satu atau beberapa direktori untuk dicari guna mengatasi nama yang diteruskan ke arahan import . Pisahkan direktori dengan titik koma (';') jika ada lebih dari satu. /ifcSearchDir[path] Mengatur opsi pengkompilasi.

Dependensi Modul Tambahan

Menentukan satu atau beberapa modul yang akan digunakan untuk mengatasi nama yang diteruskan ke arahan import . Pisahkan direktori dengan titik koma (';') jika ada lebih dari satu. /reference Mengatur opsi pengkompilasi.

Dependensi Unit Header Tambahan

Menentukan satu atau beberapa unit header yang akan digunakan untuk mengatasi nama yang import diteruskan ke direktif header. Pisahkan direktori dengan titik koma (';') jika ada lebih dari satu. /headerUnit Mengatur opsi pengkompilasi.

Memindai Sumber untuk Dependensi Modul

Saat diatur ke Ya, pengkompilasi memindai semua sumber C++, bukan hanya antarmuka modul dan sumber unit header, untuk dependensi unit modul dan header. Sistem build membangun grafik dependensi lengkap, yang memastikan bahwa semua modul dan unit header yang diimpor dibangun sebelum mengkompilasi file yang bergantung padanya. Saat dikombinasikan dengan Terjemahkan Termasuk ke Impor, file header apa pun yang ditentukan dalam header-units.json file dalam direktori yang sama dengan file header dikompilasi ke dalam unit header.

File yang memiliki ekstensi .ixx, dan file yang memiliki properti>File C/C++>Compile As diatur ke Kompilasi sebagai C++ Header Unit (/exportHeader), selalu dipindai.

Terjemahkan Termasuk ke Impor

Saat diatur ke Ya, pengkompilasi memperlakukan #include direktif sebagai import arahan jika kondisi tertentu terpenuhi: File header ditentukan dalam header-units.json file dalam direktori yang sama, dan unit header yang dikompilasi ( .ifc file) tersedia untuk file header. Jika tidak, file header diperlakukan sebagai normal #include. File header-units.json digunakan untuk membangun unit header untuk masing-masing #include tanpa duplikasi simbol. Ketika dikombinasikan dengan Sumber Pemindaian untuk Dependensi Modul, pengompilasi secara otomatis menemukan semua file header yang dapat dikompilasi ke dalam unit header. Properti ini mengatur /translateInclude opsi pengkompilasi.

Format Informasi Penelusuran Kesalahan

Menentukan jenis informasi penelusuran kesalahan yang dihasilkan oleh pengompilasi. Properti ini memerlukan pengaturan linker yang kompatibel. /Z7Mengatur opsi pengkompilasi , /Zi, /ZI (Format informasi debug).

Pilihan

  • Tidak Ada - Tidak menghasilkan informasi penelusuran kesalahan, sehingga kompilasi dapat lebih cepat.
  • Kompatibel C7 - Pilih jenis informasi penelusuran kesalahan yang dibuat untuk program Anda dan apakah informasi ini disimpan dalam file objek (.obj) atau dalam database program (PDB).
  • Database Program - Menghasilkan database program (PDB) yang berisi informasi jenis dan informasi penelusuran kesalahan simbolis untuk digunakan dengan debugger. Informasi penelusuran kesalahan simbolis mencakup nama dan jenis variabel dan fungsi, dan nomor baris.
  • Program Database for Edit And Continue - Menghasilkan database program, seperti yang dijelaskan sebelumnya, dalam format yang mendukung fitur Edit dan Lanjutkan .

Dukung Penelusuran Kesalahan Kode Saya Saja

Menambahkan kode pendukung untuk mengaktifkan penelusuran kesalahan Just My Code di unit kompilasi ini. Set ./JMC

Dukungan RunTime Bahasa Umum

Gunakan layanan runtime .NET. Sakelar ini tidak kompatibel dengan beberapa sakelar lain; lihat dokumentasi tentang /clr keluarga sakelar untuk detailnya.

Pilihan

  • Tidak Ada Dukungan RunTime Bahasa Umum - Tidak Ada Dukungan RunTime Bahasa Umum
  • Dukungan RunTime Bahasa Umum - Membuat metadata untuk aplikasi Anda yang dapat digunakan oleh aplikasi CLR lainnya. Juga memungkinkan aplikasi Anda untuk menggunakan jenis dan data dalam metadata komponen CLR lainnya.
  • Dukungan RunTime Bahasa Umum MSIL MSIL - Menghasilkan file output khusus MSIL tanpa kode yang dapat dieksekusi asli, meskipun dapat berisi jenis asli yang dikompilasi ke MSIL.
  • Brankas Dukungan RunTime Bahasa Umum MSIL - Menghasilkan MSIL-only (tanpa kode asli yang dapat dieksekusi) dan file output yang dapat diverifikasi.

Menggunakan Ekstensi Runtime Windows

Gunakan ekstensi bahasa Windows Run Time. Set ./ZW

Sembunyikan Banner Startup

Menekan tampilan banner masuk saat pengompilasi memulai dan menampilkan pesan informasi selama kompilasi.

Tingkat Peringatan

Pilih seberapa ketat Anda ingin kompiler tentang kesalahan kode. Set ./W0 - /W4

Pilihan

  • Nonaktifkan Semua Peringatan - Tingkat 0 menonaktifkan semua peringatan.
  • Level1 - Tingkat 1 menampilkan peringatan parah. Tingkat 1 adalah tingkat peringatan default di baris perintah.
  • Level2 - Tingkat 2 menampilkan semua peringatan dan peringatan tingkat 1 kurang parah dari level 1.
  • Level3 - Level 3 menampilkan semua peringatan tingkat 2 dan semua peringatan lain yang direkomendasikan untuk tujuan produksi.
  • Level4 - Level 4 menampilkan semua peringatan tingkat 3 ditambah peringatan informasi, yang dalam banyak kasus dapat diabaikan dengan aman.
  • EnableAllWarnings - Mengaktifkan semua peringatan, termasuk yang dinonaktifkan secara default.

Perlakukan Peringatan Sebagai Kesalahan

Memperlakukan peringatan kompilator sebagai kesalahan. Untuk proyek baru, mungkin yang terbaik adalah menggunakan /WX dalam setiap kompilasi. Atasi semua peringatan untuk meminimalkan cacat kode yang sulit ditemukan.

Versi Peringatan

Sembunyikan peringatan yang diperkenalkan setelah versi pengompilasi tertentu. Set ./Wv:xx[.yy[.zzzzz]]

Format Diagnostik

Memungkinkan diagnostik yang kaya, dengan informasi kolom dan konteks sumber dalam pesan diagnostik.

Pilihan

  • Caret - Menyediakan informasi kolom dalam pesan diagnostik. Dan, menghasilkan baris kode sumber yang relevan dengan tanda sisipan yang menunjukkan kolom yang menyinggung.
  • Info Kolom - Selain itu menyediakan nomor kolom dalam baris tempat diagnostik dikeluarkan, jika berlaku.
  • Klasik - Hanya menghasilkan pesan diagnostik ringkas sebelumnya dengan nomor baris.

Pemeriksaan SDL

Pemeriksaan tambahan security development lifecycle (SDL) yang direkomendasikan; termasuk mengaktifkan fitur pembuatan kode aman tambahan dan memungkinkan peringatan tambahan yang relevan dengan keamanan sebagai kesalahan. Set , /sdl/sdl-.

Kompilasi Multi-prosesor

Aktifkan kompilasi multi-prosesor. /MP Mengatur opsi pengkompilasi.

Aktifkan Address Sanitizer

Mengkompilasi dan menautkan program dengan instrumentasi AddressSanitizer. Properti ini saat ini mendukung build target x86 dan x64. /fsanitize Mengatur opsi pengkompilasi.

Properti Pengoptimalan C/C++

Pengoptimalan

Pilih opsi untuk pengoptimalan kode; pilih Kustom untuk menggunakan opsi pengoptimalan tertentu. Set , /Od/O1, /O2.

Pilihan

  • Kustom - Pengoptimalan kustom.
  • Dinonaktifkan - Nonaktifkan pengoptimalan.
  • Pengoptimalan Maksimum (Ukuran Dukungan) - Setara dengan /Os /Oy /Ob2 /Gs /GF /Gy
  • Pengoptimalan Maksimum (Kecepatan Dukungan) - Setara dengan /Oi /Ot /Oy /Ob2 /Gs /GF /Gy
  • Pengoptimalan (Kecepatan Dukungan) - Setara dengan /Oi /Ot /Oy /Ob2

Ekspansi Fungsi Sebaris

Pilih tingkat ekspansi fungsi sebaris untuk build. Set ./Ob

Pilihan

  • Default
  • Dinonaktifkan - Menonaktifkan ekspansi sebaris, yang aktif secara default.
  • Hanya __inline - Hanya memperluas fungsi yang ditandai sebagai inline, , __forceinlineatau __inline. Atau, dalam fungsi anggota C++, yang ditentukan dalam deklarasi kelas.
  • Apa Pun yang Cocok - Memperluas fungsi yang ditandai sebagai inline atau __inline dan fungsi lain yang dipilih pengkompilasi. (Ekspansi terjadi atas kebijaksanaan kompilator, sering disebut sebagai autoinlining.)

Aktifkan Fungsi Intrinsik

Mengaktifkan fungsi intrinsik. Menggunakan fungsi intrinsik menghasilkan kode yang lebih cepat, tetapi mungkin lebih besar. Set ./Oi

Ukuran atau Kecepatan Yang Disukai

Apakah akan mendukung ukuran kode atau kecepatan kode; 'Pengoptimalan Global' harus diaktifkan. Set , /Ot/Os.

Pilihan

  • Mendukung kode kecil - Meminimalkan ukuran EXEs dan DLL dengan menginstruksikan pengkompilasi untuk mendukung ukuran di atas kecepatan.
  • Mendukung kode cepat - Memaksimalkan kecepatan EXEs dan DLL dengan menginstruksikan pengkompilasi untuk mendukung kecepatan melebihi ukuran. (Nilai ini adalah default.)
  • Baik - Tidak ada pengoptimalan ukuran dan kecepatan.

Hilangkan Penunjuk Bingkai

Menekan pembuatan pointer bingkai pada tumpukan panggilan.

Mengaktifkan Pengoptimalan Fiber-Brankas

Mengaktifkan pengoptimalan ruang memori saat menggunakan serat dan akses penyimpanan lokal utas. Set ./GT

Pengoptimalan Program Siapa le

Memungkinkan pengoptimalan lintas modul dengan menunda pembuatan kode untuk menautkan waktu. Memerlukan opsi linker Menautkan Pembuatan Kode Waktu. Set ./GL

Properti Praproscesor C/C++

Definisi Praprosesor

Menentukan simbol prapemrosesan untuk file sumber Anda.

Tidak menentukan Definisi Praprosesor

Menyebutkan satu atau beberapa praprosesor yang tidak ditentukan. Set ./U

Tidak Menentukan Semua Definisi Praprosesor

Tidak menentukan semua nilai pra-prosesor yang ditentukan sebelumnya. Set ./u

Abaikan Jalur Sertakan Standar

Mencegah pengkompilasi mencari sertakan file dalam direktori yang ditentukan dalam variabel lingkungan INCLUDE.

Prapemroscesan ke File

Praproses file sumber C dan C++, dan menulis output yang telah diproses sebelumnya ke file. Opsi ini menekan kompilasi, dan tidak menghasilkan .obj file.

Preprocess Menekan Nomor Baris

Prapemroscesan tanpa arahan #line.

Pertahankan Komentar

Menekan strip komentar dari kode sumber; memerlukan pengaturan setidaknya salah satu opsi Pra-pemrosesan . Set ./C

Properti Pembuatan Kode C/C++

Aktifkan Pengumpulan String

Pengkompilasi hanya membuat satu salinan string identik baca-saja dalam gambar program. Ini menghasilkan program yang lebih kecil, pengoptimalan yang disebut pengumpulan string. /O1, /O2, dan /ZI secara otomatis mengatur /GF opsi.

Aktifkan Pembangunan Ulang Minimal

Mengaktifkan pembangunan ulang minimal, yang menentukan apakah akan mengkompilasi ulang file sumber C++ yang menyertakan definisi kelas C++ yang diubah, disimpan dalam file header .h .

Aktifkan Pengecualian C++

Menentukan model penanganan pengecualian yang akan digunakan oleh pengkompilasi.

Pilihan

  • Ya dengan Pengecualian SEH - Model penanganan pengecualian yang menangkap pengecualian asinkron (terstruktur) dan sinkron (C++). Set ./EHa
  • Ya - Model penanganan pengecualian yang hanya menangkap pengecualian C++ dan memberi tahu pengkompilasi untuk mengasumsikan bahwa fungsi C ekstern tidak pernah melempar pengecualian C++. Set ./EHsc
  • Ya dengan fungsi Extern C - Model penanganan pengecualian yang hanya menangkap pengecualian C++ dan memberi tahu pengkompilasi untuk mengasumsikan bahwa fungsi C ekstern memberikan pengecualian. Set ./EHs
  • Tidak - Tidak ada penanganan pengecualian.

Pemeriksaan Tipe Yang Lebih Kecil

Aktifkan pemeriksaan konversi ke jenis yang lebih kecil, tidak kompatibel dengan jenis pengoptimalan apa pun selain debug. Set ./RTCc

Pemeriksaan Runtime Dasar

Aktifkan pemeriksaan kesalahan runtime dasar, tidak kompatibel dengan jenis pengoptimalan apa pun selain debug. Set , /RTCs/RTCu, /RTC1.

Pilihan

  • Stack Frames - Mengaktifkan pemeriksaan kesalahan run-time bingkai tumpukan.
  • Variabel yang tidak diinisialisasi - Melaporkan kapan variabel digunakan tanpa telah diinisialisasi.
  • Keduanya (/RTC1, setara dengan /RTCsu) - Setara /RTCsudengan .
  • Default - Pemeriksaan runtime default.

Pustaka Runtime

Tentukan pustaka runtime untuk penautan. Sets /MT, /MTd, /MD, /MDd.

Pilihan

  • Multi-utas - Menyebabkan aplikasi Anda menggunakan versi statis multithread dari pustaka run-time.
  • Debug Multi-utas _DEBUG - Mendefinisikan dan _MT. Opsi ini juga menyebabkan pengkompilasi menempatkan nama LIBCMTD.lib pustaka ke dalam .obj file sehingga linker akan menggunakan LIBCMTD.lib untuk mengatasi simbol eksternal.
  • DLL multi-utas - Menyebabkan aplikasi Anda menggunakan versi khusus multithread dan DLL dari pustaka run-time. _MT Menentukan dan _DLL dan menyebabkan pengkompilasi menempatkan nama pustaka MSVCRT.lib ke .obj dalam file.
  • DLL Debug multi-utas _DEBUG- Mendefinisikan , _MT, dan _DLL menyebabkan aplikasi Anda menggunakan versi multithread debug dan khusus DLL dari pustaka run-time. Ini juga menyebabkan pengkompilasi menempatkan nama MSVCRTD.lib pustaka ke .obj dalam file.

Perataan Anggota Struct

Menentukan batas 1, 2, 4, atau 8 byte untuk perataan anggota struct. Set ./Zp

Pilihan

  • 1 Byte - Mengemas struktur pada batas satu byte. Sama seperti /Zp.
  • 2 Byte - Mengemas struktur pada batas dua byte.
  • 4 Byte - Mengemas struktur pada batas empat byte.
  • 8 Byte - Mengemas struktur pada batas delapan byte (default).
  • 16 Byte - Mengemas struktur pada batas enam belas byte.
  • Default - Pengaturan perataan default.

Pemeriksaan Keamanan

Pemeriksaan Keamanan membantu mendeteksi stack-buffer yang berjalan berlebihan, serangan umum yang dicoba terhadap keamanan program.

Pilihan

  • Nonaktifkan Pemeriksaan Keamanan - Nonaktifkan Pemeriksaan Keamanan. Set ./GS-
  • Aktifkan Pemeriksaan Keamanan - Aktifkan Pemeriksaan Keamanan. Set ./GS

Control Flow Guard

Pemeriksaan keamanan penjaga membantu mendeteksi upaya pengiriman ke blok kode ilegal.

Pilihan

  • Ya - Aktifkan Pemeriksaan Keamanan dengan Set /guard:cfPenjaga .
  • Tidak

Aktifkan Penautan Tingkat Fungsi

Memungkinkan pengkompilasi untuk mengemas fungsi individual dalam bentuk fungsi kemasan (COMDAT). Diperlukan untuk mengedit dan terus bekerja. Set ./Gy

Aktifkan Pembuatan Kode Paralel

Memungkinkan pengkompilasi menghasilkan kode paralel untuk perulangan yang diidentifikasi menggunakan #pragma loop(hint_parallel[(n)]) saat pengoptimalan diaktifkan.

Aktifkan Set Instruksi yang Ditingkatkan

Aktifkan penggunaan instruksi yang ditemukan pada prosesor yang mendukung set instruksi yang ditingkatkan. Misalnya, penyempurnaan SSE, SSE2, AVX, dan AVX2 ke IA-32. Dan, penyempurnaan AVX dan AVX2 ke x64. Saat ini /arch:SSE dan /arch:SSE2 hanya tersedia saat membangun untuk arsitektur x86. Jika tidak ada opsi yang ditentukan, pengkompilasi menggunakan instruksi yang ditemukan pada prosesor yang mendukung SSE2. Penggunaan instruksi yang ditingkatkan dapat dinonaktifkan dengan /arch:IA32. Untuk informasi selengkapnya, lihat /arch (x86), /arch (x64), /arch (ARM64), dan /arch (ARM).

Pilihan

  • Ekstensi SIMD Streaming - Ekstensi SIMD Streaming. Set /arch:SSE
  • Ekstensi SIMD Streaming 2 - Ekstensi SIMD Streaming 2. Set /arch:SSE2
  • Ekstensi Vektor Tingkat Lanjut - Ekstensi Vektor Tingkat Lanjut. Set /arch:AVX
  • Ekstensi Vektor Tingkat Lanjut 2 - Ekstensi Vektor Tingkat Lanjut 2. Set /arch:AVX2
  • Tidak Ada Instruksi yang Ditingkatkan - Tidak Ada Instruksi yang Ditingkatkan. Set /arch:IA32
  • Tidak Diatur - Tidak Diatur.

Model Titik Mengambang

Atur model titik ambang. Set , /fp:precise/fp:strict, /fp:fast.

Pilihan

  • Tepat - Default. Meningkatkan konsistensi pengujian floating-point untuk kesetaraan dan ketidaksetaraan.
  • Ketat - Model floating-point paling ketat. /fp:strictfp_contract menyebabkan NONAKTIF dan fenv_access AKTIF. /fp:except tersirat dan dapat dinonaktifkan dengan secara eksplisit menentukan /fp:except-. Ketika digunakan dengan /fp:except-, /fp:strict memberlakukan semantik floating-point yang ketat tetapi tanpa menghormati peristiwa luar biasa.
  • Cepat - Membuat kode tercepat dalam banyak kasus.

Aktifkan Pengecualian Titik Mengambang

Model pengecualian titik mengambang yang andal. Pengecualian akan dimunculkan segera setelah dipicu. Set ./fp:except

Buat Gambar Hotpatchable

Ketika hotpatching aktif, kompilator memastikan bahwa instruksi pertama dari setiap fungsi adalah dua byte, sebagaimana diperlukan untuk patching panas. Set ./hotpatch

Mitigasi Spectre

Mitigasi spektre untuk CVE 2017-5753. Set ./Qspectre

Pilihan

  • Diaktifkan - Mengaktifkan fitur mitigasi Spectre untuk CVE 2017-5753
  • Dinonaktifkan - Tidak Diatur.

Properti Bahasa C/C++

Nonaktifkan Ekstensi Bahasa

Menekan atau mengaktifkan ekstensi bahasa. Set ./Za

Perlakukan WChar_t Sebagai Jenis Bawaan

Ketika ditentukan, jenis wchar_t menjadi jenis asli yang memetakan dengan __wchar_t cara yang sama yang short memetakan ke __int16. /Zc:wchar_t aktif secara default.

Paksa Kesuaian dalam Cakupan Perulangan

Menerapkan perilaku C++ standar untuk perulangan for pernyataan dengan ekstensi Microsoft. Set , /Za/Ze (Nonaktifkan ekstensi bahasa. /Zc:forScope aktif secara default.

Menghapus kode dan data yang tidak direferensikan

Ketika ditentukan, pengkompilasi tidak lagi menghasilkan informasi simbol untuk kode dan data yang tidak direferensikan.

Menerapkan aturan konversi jenis

Digunakan untuk mengidentifikasi jenis referensi rvalue sebagai hasil dari operasi cast sesuai dengan standar C++11.

Aktifkan Informasi Jenis Run-Time

Menambahkan kode untuk memeriksa jenis objek C++ pada waktu proses (informasi jenis runtime, atau RTTI). Set , /GR/GR-.

Buka Dukungan MP

Mengaktifkan ekstensi bahasa OpenMP 2.0. Set ./openmp

Standar Bahasa C++

Menentukan standar bahasa C++ yang diaktifkan pengkompilasi. Nilai default tidak mengatur opsi standar, sehingga pengkompilasi menggunakan pengaturan C++14 defaultnya. Jika Anda memilih nilai tertentu, opsi pengkompilasi yang /std sesuai set.md).

Pilihan

  • Default (ISO C++14 Standard)
  • ISO C++14 Standard (/std:c++14)
  • ISO C++17 Standard (/std:c++17)
  • ISO C++20 Standard (/std:c++20)
  • Pratinjau - Fitur dari Draf Kerja C++ Terbaru (/std:c++terbaru)

Standar Bahasa C

Menentukan standar bahasa C yang diaktifkan pengkompilasi. Nilai default tidak mengatur opsi standar, sehingga pengkompilasi menggunakan pengaturan MSVC warisan defaultnya. Jika Anda memilih nilai tertentu, opsi pengkompilasi yang /std sesuai set.md).

Pilihan

  • Default (MSVC Warisan)
  • ISO C11 Standard (/std:c11)
  • ISO C17 (2018) Standard (/std:c17)

Mode kesuaian

Mengaktifkan atau menekan mode kesesuaian. Set ./permissive-

Aktifkan Modul Pustaka Standar C++ Eksperimental

Dukungan eksperimental untuk modul TS modul C++ dan Pustaka Standar.

Membangun Modul Pustaka Standar ISO C++23

Mulai dari Visual Studio 17.6, ketika properti ini diaktifkan dan Standar Bahasa C++ diatur ke /std:c++latest, proyek Visual C++ secara otomatis menemukan dan membangun modul Pustaka Standar ISO C++23. Ini memungkinkan Anda untuk import std atau import std.compat dalam kode C++ Anda.

Properti Header C/C++ yang Telah Dikompreilasi

Membuat/Menggunakan Header yang Telah Dikompresi

Memungkinkan pembuatan atau penggunaan header yang telah dikompilasikan sebelumnya selama build. Set , /Yc/Yu.

Pilihan

  • Buat - Menginstruksikan pengkompilasi untuk membuat file header (.pch) yang telah dikompilasi sebelumnya yang mewakili status kompilasi pada titik tertentu.
  • Gunakan - Menginstruksikan pengkompilasi untuk menggunakan file header (.pch) yang sudah dikompilasi sebelumnya dalam kompilasi saat ini.
  • Tidak Menggunakan Header yang Telah Dikompresi - Tidak menggunakan header yang telah dikommpilasikan sebelumnya.

File Header yang Telah Dikompresi

Menentukan nama file header yang akan digunakan saat membuat atau menggunakan file header yang telah dikommpilasikan sebelumnya. Set , /Yc/Yu.

File Output Header yang Telah Dikompresi

Menentukan jalur atau nama file header yang dihasilkan sebelumnya. Set ./Fp

Properti File Output C/C++

Perluas Sumber Berkait

Buat file daftar dengan atribut yang diperluas yang disuntikkan ke dalam file sumber. Set ./Fx

Output Perakitan

Menentukan isi file hasil bahasa rakitan. Sets /FA, /FAc, /FAs, /FAcs.

Pilihan

  • Tidak Ada Daftar - Tidak ada daftar.
  • Daftar Assembly-Only - Kode assembly; .asm
  • Rakitan Dengan Kode Mesin - Mesin dan kode perakitan; .cod
  • Assembly With Source Code - Kode sumber dan assembly; .asm
  • Assembly, Machine Code and Source - Assembly, kode mesin dan kode sumber; .cod

Menggunakan unicode untuk daftar perakitan

Menyebabkan file output dibuat dalam format UTF-8.

Lokasi Daftar ASM

Menentukan jalur atau nama relatif untuk file daftar ASM; dapat berupa nama file atau direktori. Set ./Fa

Nama File Objek

Menentukan nama untuk mengganti nama file objek default; dapat berupa nama file atau direktori. Set ./Fo

Nama File Database Program

Menentukan nama untuk file PDB yang dihasilkan kompilator; juga menentukan nama dasar untuk file IDB yang dihasilkan kompilator yang diperlukan; dapat berupa nama file atau direktori. Set ./Fd

Buat File Dokumentasi XML

Menentukan bahwa pengkompilasi harus menghasilkan file komentar dokumentasi XML (. XDC). Set ./doc

Nama File Dokumentasi XML

Menentukan nama file dokumentasi XML yang dihasilkan; dapat berupa nama file atau direktori. /doc:<Mengatur nama.>

C/C++ Telusuri Properti Informasi

Aktifkan Telusuri Informasi

Menentukan tingkat informasi telusur dalam .bsc file. Set ./FR

Telusuri File Informasi

Menentukan nama opsional untuk file informasi browser. /FR<Mengatur nama.>

Eksternal Termasuk

Perlakukan File yang Disertakan dengan Kurung Sudut sebagai Eksternal

Menentukan apakah akan memperlakukan file yang disertakan dengan tanda kurung sudut sebagai eksternal. Atur properti ini ke Ya untuk mengatur /external:anglebrackets opsi pengkompilasi.

Tingkat Peringatan Header Eksternal

Pilih seberapa ketat Anda ingin pengkompilasi tentang kesalahan kode di header eksternal. Properti ini mengatur /external:Wn opsi pengkompilasi. Jika nilai ini diatur ke Mewarisi Tingkat Peringatan Proyek atau default, opsi lain /external diabaikan.

Diagnostik Templat di Header Eksternal

Menentukan apakah akan mengevaluasi tingkat peringatan di seluruh rantai instansiasi templat. Atur properti ini ke Ya untuk mengatur /external:templates- opsi pengkompilasi.

Menonaktifkan Analisis Kode untuk Header Eksternal

Menonaktifkan analisis kode untuk header eksternal. /analyze:external- Mengatur opsi pengkompilasi.

Aturan Analisis untuk Header Eksternal

Menentukan penggantian aturan analisis kode untuk header eksternal. Jika tidak ditentukan, pengaturan Analisis Kode digunakan. /analyze:external:ruleset path Mengatur opsi pengkompilasi.

Properti Tingkat Lanjut C/C++

Konvensi Panggilan

Pilih konvensi panggilan default untuk aplikasi Anda (dapat ditimpa oleh fungsi). Sets /Gd, /Gr, /Gz, /Gv.

Pilihan

  • __cdecl - Menentukan __cdecl konvensi panggilan untuk semua fungsi kecuali fungsi dan fungsi anggota C++ yang ditandai __stdcall atau __fastcall.
  • __fastcall - Menentukan __fastcall konvensi panggilan untuk semua fungsi kecuali fungsi dan fungsi anggota C++ yang ditandai __cdecl atau __stdcall. Semua __fastcall fungsi harus memiliki prototipe.
  • __stdcall - Menentukan __stdcall konvensi panggilan untuk semua fungsi kecuali fungsi dan fungsi anggota C++ yang ditandai __cdecl atau __fastcall. Semua __stdcall fungsi harus memiliki prototipe.
  • __vectorcall - Menentukan __vectorcall konvensi panggilan untuk semua fungsi kecuali fungsi dan fungsi anggota C++ yang ditandai __cdecl, , __fastcallatau __stdcall. Semua __vectorcall fungsi harus memiliki prototipe.

Kompilasi Sebagai

Pilih opsi kompilasi bahasa untuk file sumber. Mengatur opsi , /TP, /interface, /internalPartition, atau /exportHeader ./TC

Pilihan

  • Default - Default.
  • Kompilasi sebagai Kode C (/TC) - Kompilasi file sumber tertentu sebagai kode C. Secara default, file dengan .c ekstensi dikompilasi sebagai C.
  • Kompilasi sebagai Kode C++ (/TP) - Kompilasi file sumber tertentu sebagai kode C++. Secara default, semua file sumber yang tidak memiliki .c, , .ixx, .cppm.h, atau tidak ada ekstensi yang dikompilasi sebagai C++.
  • Kompilasi sebagai Kode Modul C++ (/interface) - Kompilasi file sumber tertentu sebagai kode modul C++. Secara default, file dengan .ixx ekstensi atau .cppm dikompilasi sebagai kode modul C++.
  • Kompilasi sebagai Partisi Internal Modul C++ (/internalPartition) - Kompilasi file sumber tertentu sebagai partisi internal modul C++.
  • Kompilasi sebagai Unit Header C++ (/exportHeader) - Kompilasi file sumber tertentu sebagai unit header C++. Secara default, file dengan .h ekstensi atau tidak ada ekstensi yang dikompilasi sebagai unit header.

Nonaktifkan Peringatan Tertentu

Nonaktifkan nomor peringatan yang ditentukan. Letakkan angka peringatan dalam daftar yang dibatasi titik koma. /wd<Mengatur nomor.>

File Sertakan Paksa

satu atau beberapa file yang dipaksakan termasuk. /FI<Mengatur nama.>

File #using Paksa

Menentukan satu atau beberapa file #using paksa. /FU<Mengatur nama.>

Tunjukkan Sertakan

Menghasilkan daftar file yang termasuk dengan output pengompilasi. Set ./showIncludes

Gunakan Jalur Lengkap

Gunakan jalur lengkap dalam pesan diagnostik. Set ./FC

Hilangkan Nama Pustaka Default

Tidak menyertakan nama pustaka default dalam .obj file. Set ./Zl

Pelaporan Kesalahan Kompilator Internal

Catatan

Opsi ini tidak digunakan lagi. Dimulai di Windows Vista, pelaporan kesalahan dikontrol oleh pengaturan Pelaporan Galat Windows (WER).

Perlakukan Peringatan Spesifik Sebagai Kesalahan

Memperlakukan peringatan kompilator tertentu sebagai kesalahan di mana n adalah peringatan kompilator.

Opsi Tambahan

Opsi Tambahan.