Obj-C错误“ARC不允许将Int隐式转换为集合*

时间:2012-08-20 12:13:10

标签: objective-c ios5 int automatic-ref-counting fmdb

- (void)saveCollectionMoment:(NSArray *)collectionMoments
{
    for (NSDictionary *momentData in collectionMoments) {

        int mID = [[momentData objectForKey:@"mID"] intValue];

        FMDBDataAccess *db = [[FMDBDataAccess alloc] init];
        [db insertMoment:mID toCollection: cID];
    }
}

以上应该采用JSON返回提供的id并使用FMDB使用mID和cID更新SQLite数据库表,但我得到的是以下错误。

  

ARC

不允许将'int'隐式转换为'Moment *'

非常感谢你的帮助。

1 个答案:

答案 0 :(得分:4)

问题是insertMoment:toCollection:期望Moment*对象作为其第一个参数,而您尝试将整数ID传递给它。

您应该将代码更改为让insertMoment:toCollection:接受整数MomentID作为其第一个参数,或者在调用{{Moment*之前通过其MomentID获取insertMoment:toCollection: 1}}方法。

相关问题