0

我对这种语言完全陌生,请原谅我这个琐碎的问题。

我正在关注提供以下代码的 tut:

错误代码的屏幕截图

我想看看屏幕截图你知道我遇到了什么问题吗?

4

4 回答 4

3

上面的代码工作正常,用括号围绕你的 return 语句没有问题。我刚刚运行了完全相同的代码,它运行良好并给出了预期的结果。

NSString *boolString(BOOL yesNo) {
    if (yesNo == YES) {
        return (@"YES");
    } else {
        return (@"NO");
    }
}

尝试清理您的项目(⇧</kbd>+⌘</kbd>+K) and build it again and see if that works. If it doesn't, open the Organizer from Xcode (⇧</kbd>+⌘</kbd>+2) and delete the "Derived data" for your project and try to build it again.


此外,如果您正在尝试学习 Objective-C,请考虑使用 Objective-C 方法而不是 C 函数。(您像这样调用以下代码[self boolString:YES];:)

- (NSString *)boolString:(BOOL)yesNo {
    if (yesNo == YES) {
        return (@"YES");
    } else {
        return (@"NO");
    }
}
于 2012-05-12T07:38:13.037 回答
2

虽然这与问题无关,但理解objective-C上的实例方法定义的语法仍然很有用:

- (NSString*) boolString: (BOOL yesno) {
    // code
    return @"objective-C string";
}
于 2012-05-12T07:14:08.943 回答
1

更改返回语句,使用 -

return @"YES";

return @"NO";
于 2012-05-12T07:13:14.273 回答
0

代码没有错。神奇的是我用手重写了代码,它没有错误,我猜当我从多个pdf页面复制代码时可能会有隐藏的字符。

于 2012-05-12T07:49:51.847 回答