有人告诉我,Objective-C 中的 BOOL 是无符号字符的 typedef,而 YES 和 NO 关键字是编码字符。这不是我第一次听到。我读过这是因为苹果在 C 标准提供 _Bool 类型之前使用了 BOOL,我错了吗?这个事实有什么好处吗?我们在浪费内存吗?这是否提供了一种在函数中返回有价值数据的方法?当发生某些意外行为时,将其用作返回不同值的方法是否正确?
BOOL myFunction(int argument)
{
BOOL result = YES; //The function generates the result
if (someError == YES) {
return 5;
}
return result;
}