Bagaimana Menerapkan Penanganan Exception Di C ++?



Artikel ini akan membantu Anda memahami apa itu penanganan pengecualian dan bagaimana menerapkan penanganan pengecualian di C ++ dengan demonstrasi praktis.

Pengecualian adalah kondisi abnormal selama waktu proses atau waktu kompilasi. adalah konsep yang sangat penting di c ++. Artikel ini akan memperkenalkan Anda pada penanganan pengecualian di C ++ bersama dengan tipenya yang berbeda.

Petunjuk berikut akan dibahas dalam artikel ini,





Jadi mari kita mulai,

Penanganan Pengecualian Dalam C ++

Jenis Pengecualian

Ada dua jenis pengecualian,



Jalankan Pengecualian waktu

Ini adalah Pengecualian yang ditangkap selama waktu proses.

Pengecualian waktu kompilasi



Ini adalah Pengecualian yang ditangkap selama waktu kompilasi.

Pindah dengan artikel Penanganan Pengecualian ini di C ++,

Apa Itu Penanganan Pengecualian?

Kesalahan mengganggu pelaksanaan normal program. Penanganan pengecualian sangat diperlukan, dan ini adalah proses penanganan kesalahan atau pengecualian. Ini memastikan bahwa eksekusi program tidak terpengaruh oleh pengecualian dan secara perlahan menanganinya tanpa menyebabkan masalah apa pun pada eksekusi program.

Saat Anda mempertimbangkan penanganan pengecualian, ada tiga istilah yang terkait dengannya,

Mencoba

Kode di dalam blok ini seperti kode percobaan, yang mungkin memunculkan pengecualian. Pengecualian ini ditangkap di dalam blok catch.

Menangkap

Kode di blok ini dijalankan ketika kode di blok percobaan melontarkan pengecualian.

Melemparkan

Kata kunci ini digunakan untuk membuat pengecualian jika ditemukan. Pengecualian dikirim ke penangan pengecualian.

Sintaksis:

bagaimana mengubah double menjadi int di java

Kode di dalam blok percobaan dijalankan. Jika ada kesalahan yang dihasilkan, maka kata kunci melempar pengecualian ke penangan pengecualian, yaitu blok catch. Blok catch kemudian mengeksekusi kode yang ada di dalam bloknya, sehingga menangani eksepsi.

Mari kita lihat kode contoh untuk penanganan pengecualian di c ++

Kode sampel

#include using namespace std try {// code for try throw & ldquoexception & rdquo} catch (exception) {// code for catch} int main () {int x = 1 try {cout<< 'Try Block: '<

Keluaran:

Output - Penanganan Pengecualian Dalam C ++ - Edureka

Penjelasan

Program ini menunjukkan penanganan pengecualian. Kami memiliki variabel x, yang diberi nilai 1. Kemudian kami memiliki awal blok percobaan. Di blok ini, kita memiliki pernyataan if dengan kondisi x<10.

Dalam kasus kami, kondisinya benar karena x adalah satu. Program kemudian melempar pengecualian dan kontrol bergeser ke blok tangkap. Kami mengeksekusi kondisi di bagian tangkap dan keluar dari blok.

catch (...) {cost<< 'Default Exceptionn'<

Terakhir, kami mengeksekusi pernyataan yang tersisa setelah blok catch dan keluar dari program.

Mungkin ada beberapa pernyataan tangkap, tergantung pada jumlah kemungkinan pengecualian.

Pindah dengan artikel Penanganan Pengecualian ini di C ++,

Kegagalan Catch Block

Pertimbangkan program sebelumnya, jika bukannya x kata kunci throw melempar 'ABC', maka fungsi catch tidak akan bisa menanganinya. Ini akan menunjukkan kesalahan,

Kami dapat meminta pesan kesalahan menang kami ditampilkan dalam kasus seperti itu.

Untuk mengatasi ini, kita perlu menambahkan fungsi catch default ke kode untuk menangani masalah tersebut.

#include using namespace std int main () {int x = 1 try {cout<< 'Try Block: '<

Output:

yang memiliki metode kelas pemindai membiarkan Anda

Penjelasan:

Kode ini mirip dengan yang sebelumnya. Satu-satunya perubahan adalah pengecualian yang dilemparkan adalah tipe char. Ini mengakibatkan fungsi catch kami menjadi tidak berguna. Jadi kami telah menyertakan fungsi tangkap default.

Jika tidak ada pernyataan catch yang cocok, maka default catch dijalankan.

Beberapa Catch Block

Mungkin ada beberapa blok tangkapan dari satu blok percobaan.

Berikut ini contohnya,

#include using namespace std int test (int a) {try {if (a<0) throw a else throw 'a' }catch(int a){ cout<<'Caught an integer: ' << a<

Keluaran:

Penjelasan:

Dalam kode di atas, kami menggunakan beberapa pernyataan tangkapan. Kami memiliki uji fungsi yang menghasilkan pengecualian. Dalam kasus pengujian pertama, nilainya adalah 10. Karena 10 lebih besar dari nol, 'a' karakter dilempar dan ditangkap oleh fungsi catch kedua.

Dalam kasus kedua, nilainya kurang dari 0 sehingga nilai -1 dilempar dan ditangkap oleh pengecualian integer

Penanganan Pengecualian di kelas dasar dan turunan:

Jika pengecualian kelas dasar dan turunan tertangkap maka tangkapan dari kelas turunan harus dieksekusi sebelum kelas dasar.

Berikut beberapa pengecualian:

  • std :: exception

  • logic_error

  • runtime_error

  • bad_alloc

  • bad_cast

  • bad_exception

Dengan ini kita sampai pada akhir blog ini tentang 'Penanganan Pengecualian Dalam C ++'. Saya harap Anda menemukan ini informatif dan bermanfaat, nantikan lebih banyak tutorial tentang topik serupa. Anda juga dapat memeriksa program pelatihan kami.o dapatkan pengetahuan mendalam tentang jQuery bersama dengan berbagai aplikasinya, Anda bisa untuk pelatihan online langsung dengan dukungan 24/7 dan akses seumur hidup.

Ada pertanyaan untuk kami? Sebutkan mereka di bagian komentar blog ini dan kami akan menghubungi Anda kembali.