Apa itu C++ Exception Handling ?
C++ Exception Handling Adalah suatu fitur yang terdapat dalam bahasa c++ berperan ketika terjadi error atau kesalahan pengetikan code program atau error yang lainya, program c++ akan mengalihkan atau melemparkan error ke sebuah pesan kesalahan.
Bagian Dan Fungsi C++ Exception
Bagian – bagian dan fungsi Exception terbagi 3 bagian yaitu try, throw dan catch :
- Try : memungkinkan Anda untuk menentukan blok kode yang akan diuji untuk kesalahan saat sedang dijalankan.
- throw : Melemparkan pengecualian saat masalah terdeteksi, yang memungkinkan kita membuat kesalahan khusus.
- catch : memungkinkan anda bisa menentukan untuk mengeksekusi blok kode, jika terjadi kesalahan dalam blok percobaan.
Baca : C++ Class, C++ File Handling, Database Backup Dengan Batch File
Bentuk Exception
C++ Exception mempunyai bentuk penulisan yang familiar dan mudah untuk mengenalinya.
Berikut contoh penulisan C++ Exception :
try {
//code program
throw exception; //exception akan melempar jika ada masalah
}
catch () {
// code untuk menangani masalah
}
Penjelasan : jika penulisan program benar atau tidak ada error maka exception akan lolos, namun jika salah c++ exception akan melempar dan catch akan menangkap untuk menangani masalah.
Berikut ini adalah contoh program c++ yang menggunakan exception :
// Example program
#include <iostream>
#include <string>
using namespace std;
int main()
{
try {
int val = 0;
cout << "Masukan Grade anda : "; cin>>val;
if (val > 350) {
cout << "Selemat Anda lulus test CPNS! ";
} else {
throw 20;
}
}
catch (int e) {
cout << "Test Gagal - Grade anda harus > 350 untuk dapat mengikuti test selanjutnya! .\n";
cout << "Error number: " << e;
}
}
Penjelasan : contoh program diatas ketika user menginput nilai < 350 maka program akan melempar error 20.
Output :
Masukan Grade anda : 100
Test Gagal - Grade anda harus > 350 untuk dapat mengikuti test selanjutnya! .
Error number: 20
Penjelasan : Program menampilkan nilai hasil inputan dari user dengan nilai 100, catch menampilkan pesan error karena nilai kurang dari 350 dan menampilkan error 20 (nilai dari int e).
0 Komentar