Rumah Keuangan Pribadi Hindari Bugs dalam Program C ++ Anda

Hindari Bugs dalam Program C ++ Anda

Daftar Isi:

Video: Coding Challenge #124: Flocking Simulation 2024

Video: Coding Challenge #124: Flocking Simulation 2024
Anonim

Jangan mulai debug kode Anda sampai Anda menghapus atau setidaknya memahami semua peringatan yang dihasilkan selama kompilasi. Mengaktifkan semua pesan peringatan jika Anda mengabaikannya apakah Anda tidak baik. Jika Anda tidak mengerti peringatannya, lihatlah. Apa yang tidak kamu ketahui akan menyakitimu. Mengadopsi gaya pengkodean yang jelas dan konsisten

Mengkodekan dengan gaya yang jelas dan konsisten tidak hanya meningkatkan keterbacaan program namun juga menghasilkan sedikit kesalahan pengkodean. Ingat, semakin sedikit kekuatan otak yang harus Anda keluarkan untuk mengartikan sintaks C + +, semakin banyak yang Anda tinggalkan untuk memikirkan logika program yang ada. Gaya pengkodean yang baik memungkinkan Anda melakukan hal berikut dengan mudah:

Membedakan nama kelas, nama objek, dan nama fungsi
  • Mengetahui sesuatu tentang objek berdasarkan namanya
  • Membedakan simbol preprocessor dari simbol C ++ (yaitu, objek yang didefinisikan harus menonjol)
  • Identifikasi blok kode C ++ pada tingkat yang sama (ini adalah hasil dari indentasi yang konsisten)
  • Selain itu, Anda perlu membuat header modul standar yang menyediakan informasi tentang fungsi atau kelas dalam modul, penulis (mungkin, itu Anda), tanggal, versi kompiler yang Anda gunakan, dan riwayat modifikasi.

Akhirnya, semua programmer yang terlibat dalam satu proyek harus menggunakan gaya yang sama. Mencoba untuk menguraikan sebuah program dengan tambal sulam dengan gaya pengkodean yang berbeda membingungkan.

Kirimkan kode Anda saat Anda menuliskannya

Anda dapat menghindari kesalahan jika Anda mengomentari kode Anda saat Anda menulisnya daripada menunggu sampai semuanya bekerja dan kemudian kembali dan menambahkan komentar. Tidak meluangkan waktu untuk menulis header tebal dan deskripsi fungsi sampai nanti bisa dimengerti, namun Anda selalu punya waktu untuk menambahkan komentar singkat saat menulis kode.

Komentar singkat harus mencerahkan. Jika tidak, mereka tidak berharga dan Anda harus melakukan sesuatu yang lain. Anda membutuhkan semua pencerahan yang bisa Anda dapatkan saat mencoba membuat program Anda bekerja. Bila Anda melihat sepotong kode yang Anda tulis beberapa hari yang lalu, komentar yang singkat, deskriptif, dan to the point dapat memberikan kontribusi dramatis untuk membantu Anda mengetahui dengan tepat apa yang sedang Anda coba lakukan.

Selain itu, kode lekukan dan konvensi penamaan yang konsisten membuat kode lebih mudah dipahami. Semuanya sangat bagus saat kode mudah dibaca setelah selesai dengan itu, tapi sama pentingnya kode itu mudah dibaca saat Anda menuliskannya. Saat itulah Anda membutuhkan bantuan.

Single-step setiap path setidaknya sekali

Sebagai programmer, penting bagi Anda untuk memahami apa yang sedang dilakukan program Anda. Tidak ada yang memberi Anda nuansa yang lebih baik untuk apa yang terjadi di bawah tenda daripada sekadar melangkah dengan debugger yang bagus. (Para debugger yang termasuk dalam IDE kompiler interaktif bekerja dengan baik.)

Di luar itu, ketika Anda menulis sebuah program, terkadang Anda memerlukan bahan mentah untuk mengetahui beberapa perilaku aneh. Tidak ada yang memberi Anda materi itu lebih baik daripada fungsi baru yang lajang saat mereka mulai beroperasi.

Akhirnya, ketika sebuah fungsi selesai dan siap ditambahkan ke program ini, setiap jalur logis perlu dijalani setidaknya satu kali. Bug lebih mudah ditemukan saat fungsi diperiksa dengan sendirinya daripada setelah dilempar ke dalam panci dengan sisa fungsinya - dan perhatian Anda telah beralih ke tantangan pemrograman baru.

Hindari operator overloading

selain menggunakan operator dua operator I / O

operator <(< dan >> () dan operator penugasan = () , Anda mungkin harus menunda operator overloading sampai Anda merasa nyaman dengan C ++. Meskipun satu set operator kelebihan beban yang bagus dapat meningkatkan utilitas dan keterbacaan dari kelas baru, operator overloading (selain yang baru mendaftar) hampir tidak pernah diperlukan dan dapat menambahkan secara signifikan masalah kesengsaraan debug Anda sebagai programmer baru. Anda bisa mendapatkan efek yang sama dengan mendefinisikan dan menggunakan fungsi anggota masyarakat yang tepat. Setelah Anda menjalani C-Plus-Plussing selama beberapa bulan, silakan kembali dan mulai membebani operator dengan konten hati Anda.

Penanganan tumpukan saldo

Umumnya, pemrogram harus mengalokasikan dan melepaskan tumpukan memori pada tingkat yang sama. "Jika fungsi anggota

MyClass:: create () mengalokasikan blok memori tumpukan dan mengembalikannya ke pemanggil, maka harus ada fungsi anggota MyClass:: release () bahwa mengembalikan memori ke heap. Secara khusus, MyClass:: create () seharusnya tidak memerlukan fungsi induk untuk melepaskan memori itu sendiri. Hal ini tentu saja tidak menghindari semua masalah memori - fungsi induk mungkin lupa untuk memanggil MyClass:: release () - tapi ini mengurangi kemungkinannya. Gunakan pengecualian untuk menangani kesalahan

Mekanisme pengecualian di C ++ dirancang untuk menangani kesalahan dengan mudah dan efisien. Nah setelah fitur ini sudah distandarisasi, sebaiknya gunakan saja. Kode yang dihasilkan lebih mudah ditulis, mudah dibaca, dan lebih mudah dipelihara. Selain itu, programmer lain telah datang untuk mengharapkannya - Anda tidak ingin mengecewakan mereka, bukan?

Hindari multiple inheritance

Multiple inheritance, seperti operator overloading, menambahkan tingkat kerumitan lain yang tidak perlu Anda hadapi saat Anda baru memulai. Untungnya, kebanyakan hubungan dunia nyata dapat digambarkan dengan pewarisan tunggal.

Jangan ragu untuk menggunakan kelas multiple-inheritance dari pustaka komersial, seperti kelas Microsoft MFC.Microsoft telah menghabiskan cukup banyak waktu untuk menyiapkan kelasnya, dan ia tahu apa yang dilakukannya.

Setelah merasa nyaman dengan tingkat pemahaman Anda tentang C ++, bereksperimenlah dengan menyiapkan beberapa hierarki pewarisan ganda. Dengan begitu, Anda akan siap jika membutuhkannya.

Hindari Bugs dalam Program C ++ Anda

Pilihan Editor

Membuat Kartu Ucapan di Microsoft Word 2003 - dummies

Membuat Kartu Ucapan di Microsoft Word 2003 - dummies

Jika Anda ingin membuat sesuatu di Word yang hanya akan menyilaukan seseorang, coba tangan Anda dengan kartu ucapan yang disesuaikan. Untuk mengatur Word agar membuat kartu ucapan dari satu lembar kertas ukuran standar, ikuti langkah-langkah ini: 1. Pilih File -> Page Setup. 2. Klik tab Margins. 3. Pilih Landscape ...

Membuat Index of Word 2007 Document - dummies

Membuat Index of Word 2007 Document - dummies

Jika Anda ingin membuat indeks untuk Word Anda Dokumen 2007, tugas pertama adalah menandai kata atau frasa yang ingin Anda sertakan dalam indeks. Cara yang paling umum untuk melakukannya adalah dengan memasukkan penanda indeks dalam dokumen pada setiap kemunculan setiap item yang ingin Anda tampilkan ...

Editing di Word 2007: Melacak Perubahan dan Review - dummies

Editing di Word 2007: Melacak Perubahan dan Review - dummies

Menulis adalah seni yang sepi ... yaitu , sampai editor muncul. Mereka akan membuat revisi dengan menambahkan karya tulis Anda dengan hati-hati, memindahkan barang-barang, dan menghapus teks (Aduh!). Tidak ada cara untuk mengidentifikasi teks asli Anda dari teks yang dimodifikasi - kecuali jika Anda menggunakan alat Pelacakan Lagu Word 2007. Pelacakan perubahan sebagai ...

Pilihan Editor

Bagaimana Menonaktifkan dan Mengaktifkan Halaman di Squarespace - dummies

Bagaimana Menonaktifkan dan Mengaktifkan Halaman di Squarespace - dummies

Saat Anda melakukan pemeliharaan situs, kemungkinan besar Anda ingin menonaktifkan halaman situs Anda yang sedang dibangun. Squarespace memungkinkan Anda untuk dengan mudah menonaktifkan dan mengaktifkan kembali halaman. Bagaimana cara menonaktifkan halaman di Squarespace Jika Anda ingin menonaktifkan halaman di situs Anda, Anda dapat melakukannya di ...

Bagaimana Menentukan Navigasi Situs Anda di Squarespace - dummies

Bagaimana Menentukan Navigasi Situs Anda di Squarespace - dummies

Template yang Anda pilih di Squarespace mendikte berbagai area navigasi yang Anda miliki di situs Anda. Template Anda mungkin menyediakan area navigasi berikut di Pengelola Konten: Atas / Utama: Semua template memiliki navigasi teratas atau utama. Sekunder: Halaman yang ditambahkan ke area navigasi ini bukan fokus utama situs Anda. Footer: Beberapa template memiliki ...

Bagaimana Menemukan Editor Gaya Squarespace - dummies

Bagaimana Menemukan Editor Gaya Squarespace - dummies

Anda menggunakan Editor Gaya di Squarespace kapan saja Anda perlu memodifikasi desain situs Anda atau elemen tertentu di situs Anda. Style Editor adalah bagian dari mode Style, yang Anda akses di area Preview. Ikuti langkah-langkah ini untuk memuat Editor Gaya di browser Anda: Masuk ke situs web Anda. Anda ...

Pilihan Editor

Bagaimana Memodifikasi Master Slide di PowerPoint 2016 - dummies

Bagaimana Memodifikasi Master Slide di PowerPoint 2016 - dummies

Jika Anda tidak menyukai tata letak dari slide Anda dalam presentasi PowerPoint 2016, hubungi Master Slide dan lakukan sesuatu tentang hal itu, seperti yang ditunjukkan pada langkah-langkah ini: Buka Slide Master View dengan membuka tab View pada Ribbon dan kemudian klik tombol Slide Master, yang terdapat dalam Presentasi Grup tampilan Sebagai alternatif, ...

Bagaimana Memodifikasi Grafis SmartArt di PowerPoint - dummies

Bagaimana Memodifikasi Grafis SmartArt di PowerPoint - dummies

Setelah membuat grafik SmartArt dalam presentasi PowerPoint Anda, Anda mungkin ingin mengubahnya. Modifikasi dapat mencakup perubahan jenis atau tata letak grafis, menambah atau menghapus bentuk, dan mengubah urutan bentuk bentuk. Pada slide 1, klik bingkai grafis SmartArt untuk memilih keseluruhan grafik. Klik SmartArt Tools ...