iphone: try end try

后端 未结 3 1173
-上瘾入骨i
-上瘾入骨i 2020-12-04 03:53

Is there in objective-C any way to see if it is possible to do a certain task without risking crash the application?

Other languages like javascript have

         


        
相关标签:
3条回答
  • 2020-12-04 04:37

    The real question is, what are you trying to do in that error catching block?

    There are different ways to hook into different kinds of errors. What kind of code specifically are you looking to wrap in a block like that?

    0 讨论(0)
  • 2020-12-04 04:54

    While Felix's answer is technically correct, it isn't the whole story.

    On the iOS and Mac OS X, exceptions are used to indicate non-recoverable program errors. Exceptions are not used to indicate user error or recoverable errors like on Java.

    Any exception that passes through system framework code will leave said framework in an undefined state.. Catching said exceptions and trying to recover from it will lead to memory leaks, undefined behaviour and crashing.

    0 讨论(0)
  • 2020-12-04 04:57

    Have a look at Exception Handling :

    Cup *cup = [[Cup alloc] init];
    
    @try {
        [cup fill];
    }
    @catch (NSException *exception) {
        NSLog(@"main: Caught %@: %@", [exception name], [exception reason]);
    }
    @finally {
        [cup release];
    }
    

    Also worth to have a look: Error Handling Programming Guide

    0 讨论(0)
提交回复
热议问题