C++/חריגות: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
Skman (שיחה | תרומות)
Skman (שיחה | תרומות)
מ ←‏מה אפשר לזרוק: דוגמא לחריגה פשוטה
שורה 33:
==== מה אפשר לזרוק ====
למעשה, אפשר לזרוק כמעט כל דבר בין אם זה מספר ( int ) או string או Class שאנחנו כתבנו. נראה זאת בהמשך.
 
נביט בדוגמא הבאה:
<source lang="cpp">
void a_functionthrowingFunction()
{
throw "This is an exception!";
שורה 42 ⟵ 43:
{
try {
a_functionthrowingFunction();
}
catch(const char*) {
שורה 49 ⟵ 50:
}
</source>
הסבר:
* הפונקציה throwingFunction זורקת מחרוזת ע"י שימוש בפקודה throw.
* פונקצית ה ()main שלנו עושה שימוש בבלוק מהצורה:
<source lang="cpp">
try { }
catch(type) { }
</source>
הבלוק הזה מאפשר לנו לתפוס חריגות שמתרחשות בתוך הסקופ של {}try במידה ואמרנו שאנחנו יודעים להתמודד עם הטיפוס של החריגה שנזרקה.
 
==== שפות אחרות ====