gpt4 book ai didi

ios - 核心数据Fetch请求语法查询

转载 作者:行者123 更新时间:2023-11-29 03:35:52 24 4
gpt4 key购买 nike

列表已定义:

@property (nonatomic, strong) NSArray *list;

@synthesize list = _list;

有什么区别:

list = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error];

self.list = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error];

第一个返回 Core Data 中的所有记录,但第二个不返回任何内容。

最佳答案

我认为您必须阅读有关 Encapsulating Data 的应用文档.

特别是,在第一个代码片段中,您要通过访问器方法包装一个名为 _list 的实例变量。

一般来说,在 OOP 中,它们也称为 setter 和 getter。关于它们的优点的很好的讨论可以在 Why use getters and setters? 中找到。 .

所以,其他人的评论是正确的。 list 变量从何而来?

您需要了解的一件重要事情是,点语法是访问方法调用的一种简洁方式。因此,例如:

NSString *nickname = person.nickname;
person.nickname = @"This is my nickname";

等于

NSString *nickname = [person nickname];
[person setNickname:@"This is my nickname"];

一个注释。从 XCode 4.4 开始,新的 Apple LLVM 编译器 4.0 允许您跳过 @synthesize 指令。在底层,编译器生成一个带有 _ 后缀的实例变量。更多引用Automatic Property Synthesis With Xcode 4.4 .

关于ios - 核心数据Fetch请求语法查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19195644/

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