NEW SERVER - 11.9.2020 ... Retiring, March 2020 - sorry, you have missed our final public course.
The Coronavirus situation has lead us to suspend public training - which was on the cards anyway, with no plans to resume
Please ask about private 'maintenance' training for Python, Tcl, Perl, PHP, Lua, etc
Happily continuing private consultancy / programming work
The case for exceptions
When you run a program, things can go wrong - run time errors. And no amount of coding by the programmer can prevent these things - it [ac] Ä s a user entering a string of text when a number [ac] Ä s required, a needed file having been deleted, or a network connection that [ac] Ä s broken that causes probems.
In traditional coding, it [ac] Ä s standard practise to check for as many of these errors as you can throughout your code, and this often results in a few lines of live code being wrapped in 4 or 5 times that number of lines of error checking ... which catch most but still not all of the errors that may occur.
Exceptions are provided in many modern OO languages - they [ac] Ä re in more recent C++ compilers, for example, as well as in languages like Python and Java. They let you write code where you don [ac] Ä t write the detail of checking for each possible error yourself - rather, you code for the working case and you enclose anything that may go wrong into a try block. Then you provide one or more catch blocks to set up actions that are to be taken if the try block failed to complete.
Great system; often less coding, and with a tendency to fail safe if error conditions that you [ac] Ä ve not explicitly coded for crop up. (written 2006-07-11)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articlesC236 - C and C based languages - Exceptions 
Operator Overloading, Exceptions, Pointers, References and Templates in C++ - new examples from our courses - (2011-11-06) 
Throwing your own exception in C++, and catching it - (2010-11-24) 
Handling unusual and error conditions - exceptions - (2010-02-03) 
What are exceptions - Python based answer - (2008-11-08)
Some other Articles
Not shoutingundefined reference to typeinfo - C++ error messageSimple polymorphism example - C++Effective web campaign?The case for exceptionsReferences and Pointers in C++Writing up new C / C++ notes.Busy day in MelkshamRemember a site's non-technical issues tooPerl delegate - much more than just a delegate
4759 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 at 50 posts per page
This is a page archived from The Horse's Mouth at
the diary and writings of Graham Ellis.
Every attempt was made to provide current information at the time the
page was written, but things do move forward in our business - new software
releases, price changes, new techniques. Please check back via
our main site for current courses,
prices, versions, etc - any mention of a price in "The Horse's Mouth"
cannot be taken as an offer to supply at that price.
Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).