cpp:exception
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
cpp:exception [2019/05/06 07:23] – [Δήλωση των εξαιρέσεων που παράγουν οι συναρτήσεις (exception specifiers)] gthanos | cpp:exception [2021/05/07 14:38] – gthanos | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Δημιουργία | + | ====== Δημιουργία |
Ας εξετάσουμε την κλάση **Vector** που είδαμε στην ενότητα της υπερφόρτωση τελεστών. Ο προσδιοριστής //nothrow// σε συνδυασμό με τον τελεστή **new** μας υποχρεώνει να ελέγξουμε την επιστρεφόμενη τιμή του τελεστή **new** για να δούμε έαν έχει αποτύχει η διαδικασία δέσμευσης μνήμης ή όχι και στην περίπτωση που έχουμε αποτυχία τερματίζουμε το πρόγραμμα. | Ας εξετάσουμε την κλάση **Vector** που είδαμε στην ενότητα της υπερφόρτωση τελεστών. Ο προσδιοριστής //nothrow// σε συνδυασμό με τον τελεστή **new** μας υποχρεώνει να ελέγξουμε την επιστρεφόμενη τιμή του τελεστή **new** για να δούμε έαν έχει αποτύχει η διαδικασία δέσμευσης μνήμης ή όχι και στην περίπτωση που έχουμε αποτυχία τερματίζουμε το πρόγραμμα. | ||
Line 35: | Line 35: | ||
int & | int & | ||
- | if(pos>=length()) { | + | if(pos>=size) { |
cerr << " | cerr << " | ||
| | ||
Line 152: | Line 152: | ||
cout << "Enter option (1-5): "; | cout << "Enter option (1-5): "; | ||
cin >> option; | cin >> option; | ||
- | | + | |
MyException ex; | MyException ex; | ||
switch(option) { | switch(option) { | ||
Line 171: | Line 171: | ||
break; | break; | ||
default: | default: | ||
- | c = -10; throw c; // throw a character | + | c = -10; |
+ | | ||
break; | break; | ||
} | } | ||
Line 198: | Line 199: | ||
} | } | ||
</ | </ | ||
- | πιάνει όλους τους τύπους // | + | πιάνει όλους τους τύπους // |
+ | </ | ||
+ | |||
+ | <WRAP tip 80% center round> | ||
+ | Στον παραπάνω | ||
</ | </ | ||
<WRAP tip 80% center round> | <WRAP tip 80% center round> | ||
- | Στον παραπάνω κώδικα μπορείτε να παρατηρήσετε τα διαφορετικά μηνύματα | + | Στον παραπάνω κώδικα παρατηρήστε |
</ | </ | ||
cpp/exception.txt · Last modified: 2023/05/15 14:01 by gthanos