gpt4 book ai didi

ios - initWithObjects :&value mean? 是什么

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:41:32 25 4
gpt4 key购买 nike

Apple Document他们用 &value 初始化 NSSet 对象,我以前从未见过这个。有人可以为我解释一下吗?从文档看它似乎 initWithObjects: 需要对象的 C 数组,&value 怎么变成数组?根据我的理解和使用,引用地址就像我在 &error 中看到的那样。

- (void)removeEmployeesObject:(Employee *)value
{
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];

[self willChangeValueForKey:@"employees"
withSetMutation:NSKeyValueMinusSetMutation
usingObjects:changedObjects];
[[self primitiveEmployees] removeObject:value];
[self didChangeValueForKey:@"employees"
withSetMutation:NSKeyValueMinusSetMutation
usingObjects:changedObjects];
}

最佳答案

在 C 中,数组基本上是指向地址的指针。这里的&value是一个指针,指向保存(Employee *)value的地址。您可以将其视为单值数组。如果有多个元素,其他元素将在第一个元素之后并排保存。但是指针总是指向第一个元素。这就是为什么该函数需要一个 count 参数来确切知道要从第一个指针中提取多少个值。

关于ios - initWithObjects :&value mean? 是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27936412/

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