Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Visual Studio membantu Anda meningkatkan kode C++ warisan dengan opsi pengkompilasi, peringatan analisis kode, dan fitur editor seperti Perbaikan Cepat, Info Cepat, dan bilah gulir yang disempurnakan. Istilah "kode warisan" mengacu pada salah satu kategori ini:
Kode yang sebelumnya diizinkan oleh pengkompilasi Microsoft C++ (MSVC) tetapi tidak pernah sesuai dengan standar C++.
Untuk meningkatkan kode MSVC yang lebih lama yang tidak sesuai, aktifkan
/permissive-opsi pengkompilasi. Semua instans penggunaan yang tidak sesuai digaris bawahi dengan berlekuk merah di editor kode. Pesan kesalahan di jendela Daftar Kesalahan menyertakan rekomendasi tentang cara memperbaiki kesalahan. Klik kode kesalahan untuk masuk ke halaman bantuannya dalam dokumentasi. Jika memperbaiki semua kesalahan sekaligus tidak praktis, Anda dapat meningkatkan kode yang tidak sesuai secara bertahap dengan mengaktifkan/permissive-opsi, memperbaiki beberapa kesalahan, lalu menonaktifkan opsi lagi. Kode akan dikompilasi dengan peningkatan baru, dan Anda dapat kembali dan memperbaiki masalah yang tersisa di lain waktu. Lihat halaman/permissive-untuk contoh kode MSVC yang tidak sesuai.Kode yang diizinkan dalam versi standar C++ sebelumnya tetapi telah ditolak atau dihapus di versi yang lebih baru.
Untuk meningkatkan ke standar bahasa yang lebih baru, atur opsi Standar Bahasa C++ ke standar yang diinginkan dan perbaiki kesalahan kompilasi apa pun yang dimunculkan. Secara umum, sebaiknya atur standar bahasa ke
/std:c++17atau/std:c++20. Kesalahan yang dimunculkan saat meningkatkan ke standar yang lebih baru tidak terkait dengan kesalahan yang dimunculkan saat menggunakan/permissive-opsi .Kode yang sesuai dengan semua versi standar tetapi tidak lagi dianggap sebagai praktik terbaik dalam C++modern.
Untuk mengidentifikasi kode di mana perubahan direkomendasikan, jalankan Analisis kode.
Membuka dan mengonversi proyek warisan
Jika proyek warisan Anda didasarkan pada versi Visual Studio yang lebih lama, Anda masih dapat memuatnya dalam versi yang lebih baru dan mengerjakannya di sana sambil mempertahankan kompatibilitas mundur dengan versi yang lebih lama. Saat Anda siap untuk pindah secara permanen ke versi baru Visual Studio, Anda dapat menargetkan ulang proyek Anda. Ini akan memungkinkan Anda untuk menggunakan alat build terbaru dan fitur proyek di IDE, tetapi Anda tidak akan lagi dapat memuat proyek yang ditargetkan ulang di versi Visual Studio yang lebih lama.
Untuk menargetkan ulang proyek ke format Visual Studio 2026, Anda dapat menggunakan asisten penyiapan yang muncul pertama kali Anda membuka solusi yang berisi proyek yang lebih lama. Anda juga dapat mengaksesnya dengan mengklik kanan solusi di Penjelajah Solusi dan memilih Solusi penargetan ulang.
Asisten penyiapan kemudian memberi Anda pilihan untuk tetap berada di versi yang lebih lama dan menginstal alat build yang hilang atau SDK Windows yang diperlukan untuk membangun, atau menargetkan ulang proyek untuk meningkatkannya. Anda dapat membuat pilihan penargetan ulang untuk setiap proyek dalam solusi atau pilih Targetkan ulang semua>Terapkan untuk meningkatkan.
Untuk informasi selengkapnya, lihat Meningkatkan proyek C++ dari versi Visual Studio sebelumnya.
Daftar Kesalahan
Setelah Anda mengatur Standar Bahasa C++ yang diinginkan dan opsi pengkompilasi lainnya (Properti>Umum), tekan > untuk mengkompilasi proyek Anda. Anda dapat mengharapkan untuk melihat beberapa kesalahan dan peringatan dalam bentuk berlekuk merah di berbagai tempat dalam kode. Kesalahan juga muncul di Daftar Kesalahan. Untuk informasi selengkapnya tentang kesalahan tertentu, klik kode kesalahan untuk masuk ke halaman bantuan dalam dokumentasi. Kode kesalahan yang dimulai dengan "C" adalah kesalahan kompilator. Kode yang dimulai dengan "MSB" adalah kesalahan MSBuild yang menunjukkan masalah dengan konfigurasi proyek.
Indikator Kesehatan Dokumen
Indikator kesehatan dokumen di bagian bawah editor menunjukkan jumlah kesalahan dan peringatan dalam dokumen saat ini, dan memungkinkan Anda untuk menavigasi langsung dari satu peringatan/kesalahan ke yang berikutnya.
Dalam banyak kasus, Anda dapat menemukan informasi selengkapnya tentang kesalahan tertentu dalam dokumentasi tentang riwayat perubahan Visual Studio dan peningkatan kesamaan.
- Peningkatan kesuaian C++
- Riwayat Perubahan Visual C++ 2003 - 2015
- Gambaran umum potensi masalah peningkatan
Menggunakan analisis kode untuk memodernisasi kode Anda
Saat memutakhirkan, kami sarankan Anda menjalankan analisis kode pada proyek Anda sehingga kode, sesuai minimal dengan Aturan Yang Direkomendasikan Microsoft Native. Aturan ini adalah kombinasi aturan yang ditentukan oleh Microsoft dan subset Pedoman Inti C++. Dengan menyesuaikan dengan ini, Anda akan sangat mengurangi atau menghilangkan sumber bug umum, dan pada saat yang sama membuat kode Anda lebih mudah dibaca dan oleh karena itu lebih mudah dipertahankan. Analisis Kode menggunakan Microsoft Native Recommended Rules diaktifkan secara default. Anda dapat mengaktifkan aturan tambahan di bawah . Kode yang melanggar salah satu aturan ditandai sebagai peringatan dan digarisbawahi dengan berlekuk hijau di editor kode. Arahkan mouse ke atas squiggle untuk melihat tipsalat QuickInfo yang menjelaskan masalah tersebut.
Klik ikon filter di kolom Kode untuk memilih peringatan mana yang ditampilkan.
Kesalahan dan peringatan analisis kode juga muncul di Daftar Kesalahan seperti kesalahan pengkompilasi.
Anda dapat mengubah aturan mana yang aktif, dan membuat aturan kustom. Untuk informasi selengkapnya tentang menggunakan Analisis Kode, lihat Analisis kode untuk ringkasan C/C++.
Menggunakan Tindakan Cepat untuk memodernisasi kode
Editor kode menyediakan Tindakan Cepat untuk beberapa rekomendasi umum. Saat ikon bola lampu ditampilkan, Anda dapat mengkliknya untuk melihat Tindakan Cepat yang tersedia.
Mengonversi makro menjadi fungsi constexpr
Gambar berikut menunjukkan penggunaan makro yang disebut AVERAGE, yang memiliki pewarnaan semantik default. Gambar juga menunjukkan tipsalat QuickInfo yang ditampilkan saat kursor mouse mengarah ke atasnya:
Karena penggunaan makro tidak disarankan dalam C++modern, Visual Studio memudahkan untuk mengonversi makro ke constexpr fungsi:
Klik kanan dan
AVERAGEpilih Buka Definisi.Klik ikon obeng dan pilih Konversi makro ke constexpr
Makro dikonversi seperti yang ditunjukkan di bawah ini:
Dan panggilan ke AVERAGE sekarang diwarnai sebagai panggilan fungsi, dan tipsalat Info Cepat menunjukkan jenis fungsi yang disimpulkan:
Menginisialisasi variabel
Variabel yang tidak diinisialisasi dapat menyimpan nilai acak yang menyebabkan bug serius. Analisis kode menandai instans ini, dan editor menyediakan Tindakan Cepat:
Mengonversikan ke literal string mentah
Literal string mentah lebih rentan terhadap kesalahan dan lebih nyaman untuk di ketik daripada string dengan karakter escape yang disematkan. Klik kanan pada string dan pilih Tindakan Cepat untuk mengonversinya menjadi string mentah literal.
String dikonversi ke: R"(C:\Users\bjarnes\demo\output.txt)".