/Ob (Ekspansi Fungsi Sebaris)

Mengontrol perluasan fungsi sebaris. Secara default, ketika mengoptimalkan, ekspansi terjadi atas kebijaksanaan kompilator pada semua fungsi, sering disebut sebagai inlining otomatis.

Sintaks

/Ob{0|1|2|3}

/Ob{0|1|2}

Argumen

0
Nilai default di bawah /Od. Menonaktifkan ekspansi sebaris.

1
Memungkinkan ekspansi hanya fungsi yang ditandai sebaris, __inline, atau __forceinline, atau dalam fungsi anggota C++ yang ditentukan dalam deklarasi kelas.

2
Nilai default di bawah /O1 dan /O2. Memungkinkan pengkompilasi memperluas fungsi apa pun yang tidak ditandai secara eksplisit tanpa inlining.

3
Opsi ini menentukan inlining yang lebih agresif daripada /Ob2, tetapi memiliki batasan yang sama. Opsi /Ob3 tersedia mulai dari Visual Studio 2019.

Keterangan

Pengkompilasi memperlakukan opsi dan kata kunci ekspansi sebaris sebagai saran. Tidak ada jaminan bahwa fungsi apa pun akan diperluas sebaris. Anda dapat menonaktifkan ekspansi sebaris, tetapi Anda tidak dapat memaksa pengkompilasi untuk menggariskan fungsi tertentu, bahkan saat menggunakan __forceinline kata kunci.

Untuk mengecualikan fungsi dari pertimbangan sebagai kandidat untuk ekspansi sebaris, Anda dapat menggunakan __declspec(noinline), atau wilayah yang ditandai oleh direktif #pragma auto_inline(off) dan #pragma auto_inline(on ). Untuk informasi tentang cara lain untuk memberikan petunjuk inlining ke pengkompilasi, lihat direktif intrinsik #pragma.

Catatan

Informasi yang dikumpulkan dari pengujian pembuatan profil akan mengambil alih pengoptimalan yang akan berlaku karena Anda menentukan /Ob, /Os, atau /Ot. Untuk informasi selengkapnya, lihat Pengoptimalan Yang Dipandu Profil.

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 Ekspansi Fungsi Sebaris.

Opsi /Ob3 tidak tersedia di properti Ekspansi Fungsi Sebaris. Untuk mengatur /Ob3:

  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++>Baris Perintah.

  3. Masukkan /Ob3 di Opsi Tambahan.

Untuk mengatur opsi pengkompilasi ini secara terprogram

Baca juga

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