Objective c 基于方法中的条件终止执行的首选方法
我是iOS新手,仍然在学习正确的做事方法。另一个刚刚浮现的问题是,我如何停止基于条件的方法执行并返回调用代码?通常在PHP中,我只返回Objective c 基于方法中的条件终止执行的首选方法,objective-c,Objective C,我是iOS新手,仍然在学习正确的做事方法。另一个刚刚浮现的问题是,我如何停止基于条件的方法执行并返回调用代码?通常在PHP中,我只返回true/false,或者抛出异常,而不是将大量代码块塞进嵌套条件中,但在iOS中,我不允许从带有iAction返回签名的方法返回 处理这种情况的首选方法是什么 - (IBAction)submitCode:(id)sender { if ([codeEntry.text length] == 0) { UIAlertView *mess
true
/false
,或者抛出异常,而不是将大量代码块塞进嵌套条件中,但在iOS中,我不允许从带有iAction返回签名的方法返回
处理这种情况的首选方法是什么
- (IBAction)submitCode:(id)sender
{
if ([codeEntry.text length] == 0) {
UIAlertView *message = [[UIAlertView alloc] initWithTitle:@"Form Validation" message:@"No code entered, please try again."
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[message show];
// IOS not allowing this
return NO;
}
// Prefer not to wrap the rest of the logic in an else, rather just cease
// execution and return back to calling code
NSLog(@"I would have submitted!");
}
只用
return;
这将停止当前方法的执行
由于
iAction
被秘密地typdef
设置为void
,因此您不能返回任何内容。什么都不是什么都不是,所以只需使用return
您需要调用返回代码>,不返回否代码>
iAction
实际上是void
。这意味着该方法没有返回值。Ahhh这很有意义。尽量避免空返回,但我想在这种情况下必须这样做。另一个快速的问题是,是否首选返回TRUE/FALSE或YES/NO?这取决于方法的返回类型。如果是BOOL
,则使用YES/NO
。明白了。谢谢你的帮助。@rmaddy我都看过了。我打赌编译器只是将TRUE/FALSE更改为YES/NO。您可能已经看到了这两个选项,但这并不意味着它是正确的BOOL
用于YES/NO
。您可以使用其他值,但这并不意味着使用其他值是正确的。