User Tools

Site Tools


cpp:function_try_blocks

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
cpp:function_try_blocks [2019/05/15 08:20] – [Εξαιρέσεις που παράγονται στον κατασκευαστή] gthanoscpp:function_try_blocks [2019/05/15 08:23] – [Function Try Blocks] gthanos
Line 130: Line 130:
 } }
 catch(BadName& ex) { catch(BadName& ex) {
-  cout << "--> firstname deleted!" << endl;+  cout << "\n--> firstname deleted!" << endl;
   delete firstname;   delete firstname;
 } }
Line 144: Line 144:
 Name destructor: Snow Name destructor: Snow
 Name destructor: Snow Name destructor: Snow
 +
 --> firstname deleted! --> firstname deleted!
 Name destructor: John Name destructor: John
-Occured: BadName+Exception occured: BadName
 </code> </code>
  
 <WRAP tip 80% center round> <WRAP tip 80% center round>
-Παρατηρήστε ότι αν και εκτελείται ο κώδικας μέσα στο //catch block//, η εξαίρεση "μεταφέρεται" και στη συνάρτηση //main///. Ο λόγος είναι ότι η εξαίρεση, αναπαράγεται αυτόματα στο τέλος του //catch block//. Ο μόνος τρόπος να το αποφύγετε αυτό είναι να κάνετε //throw// μία νέα εξαίρεση, διαφορετικού τύπου.+Παρατηρήστε ότι αν και εκτελείται ο κώδικας μέσα στο //catch block//, η εξαίρεση "μεταφέρεται" και στη συνάρτηση //main//. Ο λόγος είναι ότι η εξαίρεση, αναπαράγεται αυτόματα στο τέλος του //catch block//. Ο μόνος τρόπος να το αποφύγετε αυτό είναι να κάνετε //throw// μία νέα εξαίρεση, διαφορετικού τύπου.
 </WRAP> </WRAP>
  
cpp/function_try_blocks.txt · Last modified: 2022/05/23 06:05 by gthanos