Bagikan melalui


/Oy (Kelalaian Frame-Pointer)

Menekan pembuatan pointer bingkai pada tumpukan panggilan.

Sintaks

/Oy[-]

Keterangan

Opsi ini mempercepat panggilan fungsi, karena tidak ada penunjuk bingkai yang perlu disiapkan dan dihapus. Ini juga membebaskan satu pendaftaran lagi untuk penggunaan umum.

/Oy memungkinkan kelalaian frame-pointer dan /Oy- menonaktifkan kelalaian. Di kompilator x64, /Oy dan /Oy- tidak tersedia.

Jika kode Anda memerlukan pengalamatan berbasis bingkai, Anda dapat menentukan opsi /Oy- setelah opsi /Ox atau menggunakan optimalkan dengan argumen "y" dan off untuk mendapatkan pengoptimalan maksimum dengan alamat berbasis bingkai. Kompilator mendeteksi sebagian besar situasi di mana pengalamatan berbasis bingkai diperlukan (misalnya, dengan _alloca fungsi dan setjmp dan dengan penanganan pengecualian terstruktur).

Opsi /Ox (Aktifkan Pengoptimalan Kecepatan Terbanyak) dan /O1, /O2 (Minimalkan Ukuran, Maksimalkan Kecepatan) menyiratkan /Oy. Menentukan /Oy- setelah opsi /Ox, /O1, atau /O2 menonaktifkan /Oy, apakah itu eksplisit atau tersirat.

Opsi pengompilasi /Oy membuat penggunaan debugger lebih sulit karena pengompilasi menekan informasi penunjuk bingkai. Jika Anda menentukan opsi kompilator debug (/Z7, /Zi, /ZI), kami sarankan Anda menentukan opsi /Oy- setelah opsi pengkompilasi pengoptimalan lainnya.

Untuk mengatur opsi pengkompilasi ini di lingkungan pengembangan Visual Studio

  1. Buka kotak dialog Halaman Properti proyek. Untuk detailnya, lihat Mengatur pengkompilasi C++ dan membuat properti di Visual Studio.

  2. Pilih halaman properti Properti>Konfigurasi C/C++>Optimasi.

  3. Ubah properti Hilangkan Penunjuk Bingkai. Properti ini menambahkan atau menghapus hanya opsi /Oy . Jika Anda ingin menambahkan opsi /Oy- , pilih halaman properti Baris Perintah dan ubah Opsi tambahan.

Untuk mengatur opsi pengkompilasi ini secara terprogram

Baca juga

Opsi /O (Optimalkan Kode)
Opsi Pengkompilasi MSVC
Sintaks Baris Perintah Pengkompilasi MSVC