User Tools

Site Tools


cpp:exception

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revisionBoth sides next revision
cpp:exception [2018/05/20 14:17] – [Δημιουργία και διαχείριση της εξαίρεσης] gthanoscpp:exception [2018/05/20 14:25] – [Exception Specifiers] gthanos
Line 420: Line 420:
 1. Διάβασμα από αρχείο και δέσμευση διδιάστατου πίνακα. 1. Διάβασμα από αρχείο και δέσμευση διδιάστατου πίνακα.
  
-===== Exception Specifiers =====+===== Δήλωση των εξαιρέσεων που παράγουν οι συναρτήσεις (exception specifiers) ===== 
 + 
 +Κατά τη δήλωση μίας συνάρτησης είναι δυνατόν να ορίσετε εάν αυτή μπορεί να παράγει κάποιου είδους //exception//. Υπάρχουν 3 διαφορετικού τύποι ορισμών οι οποίοι δίνονται παρακάτω: 
 +  - ''int functionName() throw();'': Ο συγκεκριμένος ορισμός δηλώνει ότι δεν παράγεται καμία εξαίρεση. 
 +  - ''int functionName() throw(std::bad_alloc);'': Ο συγκεκριμένος ορισμός δηλώνει ότι μπορεί να παραχθεί μία εξαίρεση τύπου [[http://en.cppreference.com/w/cpp/memory/new/bad_alloc|std::bad_alloc]]. 
 +  - ''int functionName() throw(...);'': Ο συγκεκριμένος ορισμός δηλώνει ότι μπορεί να παραχθεί οποιουδήποτε τύπου εξαίρεση. 
 + 
 +Τους παραπάνω ορισμούς είναι δυνατόν να τους συναντήσετε στις //standard// βιβλιοθήκες της C++. Δεν είναι όμως ευρέως χρησιμοποιούμενοι και η υποστήριξη τους από τους C++ //compilers// είναι συχνά ελλειπής. Δεν συνιστάται η χρήση τους σε κώδικα που γράφετε εσείς, λόγω της ελλειπούς υποστήριξης από την κοινότητα της C++.
  
 ===== Function try blocks ===== ===== Function try blocks =====
cpp/exception.txt · Last modified: 2023/05/15 14:01 by gthanos