From 7e0f021a9aec35fd8e6725e87e3313b101d26f5e Mon Sep 17 00:00:00 2001 From: Tobias Klauser Date: Sun, 27 Jan 2008 11:37:44 +0100 Subject: Initial import (2.0.2-6) --- reference/CPLUSPLUS/EXAMPLES/throw.cc | 43 +++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 reference/CPLUSPLUS/EXAMPLES/throw.cc (limited to 'reference/CPLUSPLUS/EXAMPLES/throw.cc') diff --git a/reference/CPLUSPLUS/EXAMPLES/throw.cc b/reference/CPLUSPLUS/EXAMPLES/throw.cc new file mode 100644 index 0000000..ca86673 --- /dev/null +++ b/reference/CPLUSPLUS/EXAMPLES/throw.cc @@ -0,0 +1,43 @@ + +/************************************************************************** + * + * Language: C++ + * Purpose: Program to demonstrate the 'try', 'catch' and 'throw' statements. + * Author: M J Leslie + * Date: 21-Mar-98 + * + * Compile: The following command was used to compile. + * + * g++ -fhandle-exceptions throw.cc -o throw + * + **************************************************************************/ + +#include // For cout. + +void ErrorFunc(int Error); + +main() +{ + ErrorFunc(0); + ErrorFunc(1); +} +void ErrorFunc(int Error) +{ + try + { + cout << "Error code is " << Error << endl; + + if (Error > 0 ) + { + throw(Error); // This statement causes control to jump + // to the 'catch' statement + } + + cout << "No Error occoured" << endl; + + } + catch(int n) + { + cout << "Error number is " << n << endl;; + } +} -- cgit v1.2.3-54-g00ecf