Re: My try/catch block isn't catching exceptions on 10.6
Re: My try/catch block isn't catching exceptions on 10.6
- Subject: Re: My try/catch block isn't catching exceptions on 10.6
- From: Gwynne Raskind <email@hidden>
- Date: Sat, 28 Nov 2009 07:57:29 -0500
On Nov 28, 2009, at 4:25 AM, Greg Parker wrote:
> Here's a fun idiom for handling both C++ and Objective-C exceptions in the same place (on iPhone and 64-bit Mac).
>
> @try {
> // do stuff
> } @catch (NSException *e) {
> // NSException
> } @catch (id e) {
> // Other Objective-C exception
> } @catch (...) {
> // Non-ObjC exception
> // Decode it by rethrowing it inside a C++ try/catch.
> try {
> @throw;
> } catch (std::bad_cast& e) {
> // C++ failed dynamic cast to reference type
> } catch (...) {
> // Other C++ exception
> // or non-ObjC non-C++ foreign exception
> }
> }
I apologize if this is a dense question, but can't you just go like this?
@try {
// do stuff
} @catch (NSException *e) {
// NSException
} @catch (id e) {
// Other Objective-C exception
} @catch (std::bad_cast& e) {
// C++ failed dynamic cast to reference type
} @catch (...) {
// Other C++ exception
// or non-ObjC non-C++ foreign exception
}
-- Gwynne
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden