Polimorfizm, undan foydalanish mexanizmlari


Istisnolarni qayta ishlash. throw, try va catch bloke


Download 19 Kb.
bet5/5
Sana15.06.2023
Hajmi19 Kb.
#1480720
1   2   3   4   5
Bog'liq
programmalash asoslari fanidan Absalamova tashlagan mustaqil ish mavzulari

Istisnolarni qayta ishlash. throw, try va catch bloke
Bu yerda C++ da throw, try va catch bloklari yordamida istisnolardan foydalanishga misol:
#include
using namespace std;
int main() {
try {
int num1, num2;
cin >> num1 >> num2;
if (num2 == 0) {
throw "Division by zero error!";
}
int result = num1 / num2;
cout << "Result: " << result << endl;
}
catch (const char* msg) {
// Handling the error message if an exception is thrown
cerr << "Error: " << msg << endl;
}
catch (...) {
// Catching all other types of exceptions
cerr << "Unknown error occurred!" << endl;
}
return 0;
}
Yuqoridagi misolda biz foydalanuvchidan ikkita raqamni kiritamiz va num1ni num2 ga ajratamiz. Agar num2 nolga teng bo'lsa, biz "Nolga bo'lish xatosi!" xabari bilan istisno qilamiz. throw kalit so'zidan foydalaning.
catch blokida biz istisnoni xato xabarini chop etish orqali hal qilamiz. Biz const char* ma'lumotlar turidan catch blokining parametri sifatida foydalanmoqdamiz, chunki biz ushbu turdagi ma'lumotlarga oid xabarni yubormoqdamiz.
Agar birinchi catch bloki tomonidan boshqarilmaydigan boshqa istisnolar yuzaga kelsa, ikkinchi catch bloki "Noma'lum xatolik yuz berdi!" degan xabarni chop etadi. chunki u boshqa barcha turdagi istisnolarni ushlaydi.
Umid qilamanki, bu yordam beradi!

Download 19 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling