Exception di C++ | Belajar C++ 41 | Tutorial C++ 41

Pada tutorial kali ini kami akan membagikan tutorial mengenai exception handling pada pemrograman C++. Berikut adalah tutorialnya.

Exception di C++

Ketika kita mengeksekusi kode program C++, berbagai error dapat terjadi baik itu dikarenakan kesalahan kode dari programmer, error karena kesalahan input, ataupun hal-hal lain yang tidak terduga.

Ketika terjadi error, C++ biasanya akan menghentikan program dan menghasilkan pesan error. Istilah teknisnya C++ akan melemparkan exception (melemparkan sebuah error).

Try dan Catch di C++

Terdapat 3 kata kunci pada exception handling di C++, yaitu : try, throw dan catch.

Kata kunci try digunakan untuk mendefinisikan blok kode program yang akan diuji kesalahannya ketika sedang dieksekusi.

Kata kunci throw digunakan untuk memunculkan exception ketika sebuah masalah terjadi. yang memungkinkan kita dapat membuat error yang dikostumisasi.

Kata kunci catch digunakan untuk menentukan blok kode program yang akan dieksekusi jika terjadi error pada blok kode program try.

Dalam pemrograman C++ kata kunci try dan catch harus digunakan berpasangan.

Contoh :
try{
    throw exception;
}
catch (){
}

Di contoh di bawah kita akan membuat kode program yang menggunakan kata kunci try, throw dan catch, dimana kode ini akan menampilkan teks tentang pembatasan usia.

Contoh Program 1 : Penggunaan exception handling

#include <iostream>
using namespace std;

int main(){
    try{
        int umur = 10;
        if(umur >= 20){
            cout << "Akses diterima - Kamu cukup umur.";
        }else{
            throw(umur);
        }
    }
    catch(int umurKu){
        cout << "Akses ditolak - Kamu setidaknya harus berusia 20 tahun. \n";
        cout << "Umur kamu adalah " << umurKu;
    }

    return 0;
}

Hasil Program 1

Penjelasan Program 1

  1. Pada baris 5 sampai baris 11 kita menggunakan blok kode try untuk mengetes beberapa kode program. jika variabel umur nilainya kurang dari 20, kita akan throw sebuah exception, yang akan dieksekusi oleh blok kode catch.
  2. Pada baris 13 sampai baris 16 adalah blok kode catch yang mana akan menangkap error, pada statemen catch ini kita memiliki sebuah parameter dengan tipe data integer dengan nama umurKu (kita menggunakan tipe data integer karena pada blok kode try kita melemparkan sebuah exception yang memiliki tipe data integer yang bernama umur).
Kita juga bisa menggunakan kata kunci throw untuk mengeluarkan sebuah angka referensi seperti angka/kode kesalahan khusus untuk tujuan pengorganisasian.

Contoh Program 2 : throw dengan angka

#include <iostream>
using namespace std;

int main(){
    try{
        int usia = 17;
        if(usia >= 20){
            cout << "Akses diterima - Kamu sudah cukup umur";
        }else{
            throw 505;
        }
    }
    catch(int usiaKu){
        cout << "Akses ditolak - Kamu belum cukup umur \n";
        cout << "Error number : " << usiaKu;
    }
    
    return 0;
}

Hasil Program 2

Penjelasan Program 2

  1. Pada baris 5 hingga baris 12 di blok kode try kita membuat kondisi jika nilai usia lebih dari 20 maka cetak teks "akses diterima - Kamu sudah cukup umur" jika nilai dari usia kurang dari 20 maka throw nilai 505.
  2. Di baris 13 hingga baris 16 kita catch nilai dari throw yaitu 505 yang disimpan pada parameter int usiaKu, di blok catch ini kita menampilkan teks "Akses ditolak - Kamu belum cukup umur" dan teks " Error number : " beserta nilai dari blok kode throw yaitu 505.

Cara Mengatasi Semua Tipe Data Exception

Jika kita tidak tahu tipe data throw yang digunakan pada blok kode try, kita bisa menggunakan sintaks "tiga titik" (. . .) pada parameter catch yang berfungsi mengatasi semua tipe data dari exception.

Contoh Program 3 : Menggunakan sintaks tiga titik pada exception

#include <iostream>
using namespace std;

int main(){
    try{
        int usia = 17;
        if(usia >= 20){
            cout << "Akses diterima - Kamu sudah cukup umur";
        }else{
            throw 505;
        }
    }
    catch(...){
        cout << "Akses ditolak - Kamu belum cukup umur \n";
    }
    
    return 0;
}

Hasil Program 3

Penjelasan Program 3

Kode program diatas mirip seperti contoh program 2 yang membedakannya hanyalah pada baris 13 di bagian parameter catch kita mengisinya dengan sintak "tiga titik" (...) jadi kita dapat menangani nilai dari throw meskipun kita tidak mengetahui tipe data yang digunakan.

Nah itulah tutorial exception pada c++, di konsep exception artinya kita membuat penanganan error milik kita jadi ketika pengguna inputannya tidak sesuai syarat yang kita buat maka kita bisa menampilkan teks yang menyatakan mereka salah memberikan input atau persyaratannya belum terpenuhi. Sekian untuk postingan kali ini, sampai jumpa di artikel selanjutnya.

Posting Komentar untuk "Exception di C++ | Belajar C++ 41 | Tutorial C++ 41"