我有另一个问题要问你,我相信我已经知道为什么它不起作用,但我不知道如何解决它......
我有一个使用 MutableNSArray 的数据库数组对象。我们称之为“数据库”。这是一个 DatabaseRecord 类型的对象数组。我还有另一个名为 CurrentRecord 的 DatabaseRecord 对象,它是我从用户界面操作的活动对象。当我在数据库中添加一个新条目时,我调用:
[Database addObject: CurrentRecord];
完成更改后,我将数据库中添加的记录替换为:
[Database replaceObjectAtIndex: <index> withObject: CurrentRecord];
我刚刚意识到 CurrentRecord 是一个指针,定义为:
DatabaseRecord *CurrentRecord;
我相信正在发生的事情是数据库中的每一个新条目都将自己设置为 CurrentRecord 的值。同样,当我更改 CurrentRecord 时,NSArray 中的所有对象都会相应地修改自己,所以我留下了一个数据库,比如 100 条完全相同的记录。
我想要做的基本上是将 CurrentRecord 的值复制到 MutableNSArray 中的适当对象中。
我确信有一个简单的解决方法,例如不传递指针,但我不太确定如何继续。我希望我的问题很清楚......