问题标签 [nscopying]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
6354 浏览

cocoa - NSManagedObject 作为 NSDictionary 键?

在我的应用程序中,我有一个NSDictionary其键应该是NSManagedObject.

然而,问题在于NSManagedObject它没有实现NSCopying协议,这意味着没有核心数据对象/实例NSManagedObject可以用作字典键,即使该-[hash]方法适用于它们。

我应该这样做吗?

0 投票
3 回答
2067 浏览

iphone - 为什么 UIView(或其子类)不采用 NSCopying 协议?

Cocoahead 能否解释一下为什么 UIView 及其子类不采用 NSCopying 协议?

我可以从哲学上理解为什么 UITouch 不符合复制要求,因为它是一个非常临时的对象。通过 UIView,它的子类,尤其是 UIButton,似乎应该能够被复制。

当然,Apple 有充分的理由以他们的方式做事。你知道他们的原因吗?

0 投票
1 回答
1325 浏览

iphone - 在类中启用 NSCopying 协议

我有一个从 NSObject 派生的类。如何像 [object copy] 一样启用复制?

这是针对 iPhone 应用程序的。

0 投票
8 回答
68728 浏览

cocoa - copy 和 mutableCopy 如何应用于 NSArray 和 NSMutableArray?

在 an或 an上使用copy和使用时有什么区别?mutableCopyNSArrayNSMutableArray

这是我的理解;这是对的吗?


0 投票
1 回答
1754 浏览

iphone - 使 UIImage 符合 NSCopying 协议

问题很简单,我需要一个 UIImage 符合 NSCopying 协议,但我完全不知道从哪里开始实现这一点。

你有什么指针可以帮助我吗?

提前致谢

0 投票
3 回答
1426 浏览

cocoa - 使用 NSCopying 复制私有实例变量的最佳实践

我可能在这里遗漏了一些明显的东西,但我正在我的一个对象上实现 NSCopying。该对象具有不通过 getter 公开的私有实例变量,因为它们不应在对象外部使用。

在我的实现中copyWithZone:,我需要分配/初始化新实例,还需要设置它的状态以匹配当前实例。我显然可以从内部访问当前私有状态copyWithZone:,但我不能将它设置到新对象中,因为该状态没有访问器。

在保持数据隐私完好无损的同时,是否有解决此问题的标准方法?

谢谢。

0 投票
3 回答
2349 浏览

objective-c - 什么时候需要 NSCopying?

我知道如果您的对象将用作 NSDictionary 中的键,则需要它。是否还有其他类似需要 NSCopying 的时间?

如果我认为我不需要我的模型对象来符合 NSCopying,我可能错了吗?

0 投票
1 回答
1012 浏览

iphone - 复制只读 NSMutableArray 的正确方法

我有一个具有只读属性的对象,我正在尝试为其实现 NSCopying。它有一个名为“subConditions”的 mutableArray(其中包含“SubCondition”对象)。我将其设为只读是因为我希望调用者能够更改数组中的数据,但不能更改数组本身。在编写 -copyWithZone: 方法之前,这非常有效。

在摸索了一下之后,我设法得到了一些似乎有效的东西。我不确定这是否是最佳做法。这是我的 -copyWithZone: 方法的简化版本:

这是复制只读 mutableArray 的正确/最佳方法吗?

0 投票
7 回答
8356 浏览

iphone - UIView 作为字典键?

我想要一个NSDictionaryUIViews 映射到其他东西的东西。

但是,由于 UIViews 没有实现NSCopying协议,我不能直接将它们用作字典键。

0 投票
1 回答
475 浏览

objective-c - 复制多维 NSMutableArray

我目前正在开发一个数独应用程序,这些数字存储在 NSNumbers 的多维 NSMutableArray 中。我在 SudokuGridView 中保留了一个数组,用于在网格中显示数字。当需要解决难题时,我将 [grid numberGrid] 传递给我创建的解决难题的 NSOperation 子类。

网格的数组被定义为如下属性:

将它传递给数独网格求解器时,我会:

initWithPuzzle 定义如下:

然后当我将拼图转换为原始 int 数组来解决它,然后返回拼图 NSMutableArray。有趣的是,现在,网格的 NSMutableArray 现在有了解决方案……这意味着在 MESudokuSolver 内部,网格的数组正在被修改。所以我做了一些调查,指向传递给 MESudokuSolver 实例的数组的指针与 MESudokuSolver 的谜题 NSMutableArray 不同。奇怪,对吧?我知道。

经过进一步调查,指向具有不同指针的数组内的 NSNumbers 的指针实际上是相同的。

对你 StackOverflow,我问,WTF?