#include <iostream>
using std::cout;
using std::endl;
void function(int n)
{
try {
if (n == 0)
throw n;
if (n == 1)
throw 'z';
if (n == 2)
throw 3.14;
}
catch (int __n) {
cout << "catch n = " << __n << endl;
}
catch (double d) {
cout << "catch d = " << d << endl;
}
catch (...) {
cout << "catch (...)" << endl;
}
}
int main()
{
function(0);
function(1);
function(2);
}
/*
run:
catch n = 0
catch (...)
catch d = 3.14
*/