gpt4 book ai didi

objective-c - iOS 圆弧 : OR operator on ManagedObject pointers

转载 作者:行者123 更新时间:2023-11-28 18:01:58 26 4
gpt4 key购买 nike

我正在使用 NSManagedObjects,我想返回任务的预算或任务类别的预算。

但是,该方法给出了错误:

Implicit conversion of int to Budget * is disallowed with ARC.

这是怎么回事?

@implementation Task

@dynamic category;
@dynamic budget;

- (Budget *)budgetOrCategoryBudget {
return [self budget] || [[self category] budget];
}

最佳答案

|| 是一个运算符,它接受两个对象或原语,如果至少有一个值是非零(如果是对象)或非-,则返回 TRUE零(如果是原语),否则为 FALSE。在 Objective-C 中,BOOL 实际上是一个 int,其中 FALSE0TRUE 是任何非零值。因此,您实际上返回了一个 BOOL(由一个 int 表示),其中编译器需要一个 Budget *

如果您想要实际返回两个预算之一,您必须提供一些其他方式来在它们之间进行选择。

关于objective-c - iOS 圆弧 : OR operator on ManagedObject pointers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11476645/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com