gpt4 book ai didi

objective-c - NSInteger 错误的隐式转换

转载 作者:太空狗 更新时间:2023-10-30 03:16:35 25 4
gpt4 key购买 nike

使用 MagicalRecord,我试图获取具有特定 clientNumber 的记录,它是一个 NSInteger(定义为 int16 作为数据类型)。

这是我遇到错误的代码行:

ClientInfo *clientSelected = [ClientInfo MR_findFirstByAttribute:@"aClientNumber" withValue: clientNumber inContext:localContext];

更新:这是 MR_findFirstByAtytribute 的定义:

MR_findFirstByAttribute:(NSString *) withValue:(id)

这是我遇到的错误:

Implicit conversion of NSInteger (aka int) is disallowed with ARC

就我的生活而言,我看不出有什么问题。 ClientInfo 定义为

@interface ClientInfo : NSManagedObject

最佳答案

withValue 的参数类型是一个id(一个指针)。 NSInteger 是标量值(不是对象),不能隐式转换为指针值。

这纯粹是一个猜测,但是从 NSInteger 创建一个 NSNumber 可能可行:

NSNumber *val = [NSNumber numberWithInteger:clientNumber];
ClientInfo *clientSelected = [ClientInfo MR_findFirstByAttribute:@"aClientNumber" withValue:val inContext:localContext];

关于objective-c - NSInteger 错误的隐式转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13957558/

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