如何使关联对象的NSDate工作?

我想将一个关联对象添加到NSDate对象。 为此,我使用此处描述的方法。

我的问题是,现在iOS不会(不再?)为同一日期创建不同的NSDate对象(请参阅此处 )。 因此,如果我有两个具有相同NSDate的项目,我无法区分对象,并且我为特定项目添加关联对象的方法失败。

我尝试了不同的方法:

  • 使用NSDatecopy方法
  • NSDate *deepCopy = [[NSDate alloc] initWithTimeInterval:0 sinceDate:date];
  • NSDate *deepCopy = [date dateByAddingTimeInterval:0];

但是我命名为deepCopy的变量不是原始date对象的深层副本。

我能做什么?

您是否考虑过创建自定义模型对象来表示日期和您想要与之关联的其他数据的组合? 应尽可能避免相关对象。 为什么不将NSObject子类NSObject创建具有两个属性的模型对象 – NSDate属性和要与其关联的其他数据的属性/属性。