Цель C - Поймано исключение вызывает сбой - PullRequest
1 голос
/ 16 августа 2011

Я делаю несколько тестов Objective C.Я поднимаю пользовательское исключение с этим кодом:

- (double)foo:(int)x{
   if (x == 0){
      [NSException raise:@"InvalidX" format:@"X can't be 0"];
   }
   return 1/x;
}

и ловлю его с помощью этого кода:

@try {
   double y = [self foo:0];
} @catch (NSException *e) {
   return;
}

Это хорошо работает, если я запускаю приложение в XCode, но вылетает, когдая запускаю .app:

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000

Application Specific Information:
objc[1769]: garbage collection is OFF
*** Terminating app due to uncaught exception 'InvalidX', reason: 'X can't be 0'
*** First throw call stack:

Это не выглядит "необученным"!Я не могу объяснить это

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...