【问题标题】:unique identifier for array of items in iphoneiphone中项目数组的唯一标识符
【发布时间】:2010-11-17 20:43:20
【问题描述】:

我目前正在计划(和部分编码)一个新应用。我有一组用户创建的项目。这实际上是图书馆。最容易将其视为经典的食材和膳食。

我有一个成分库。 然后我有一个食物库。 每餐将包含几种成分。

所以这种关系是一顿饭对许多配料。每种成分都可以用于多餐。 我可以设置所有这些 - 但我正在考虑如何在膳食中识别成分。如果我删除一种成分,然后我想删除每餐中可能出现的引用。

我是否应该为用户创建的每种成分分配一个随机 ID(可能是 5 位数字),然后当他们将其添加到膳食中时,我使用 5 位 ID 作为标识符。当用户删除一种成分时,我会遍历每个餐点数组并删除对所述成分 5 位代码的任何引用。

或者……我是不是完全想多了?! 感谢您的帮助!

【问题讨论】:

    标签: iphone iphone-sdk-3.0 nsmutablearray nsarray


    【解决方案1】:

    使用 sqlite 来存储食材和食物怎么样?不知道你实际上在编码什么,但它听起来像是一个很好的数据库应用程序。

    如果您不需要永久存储数据(例如,您实际上是在谈论游戏或其他内容),您仍然可以使用带有临时表的数据库)。

    【讨论】:

    • 谢谢约瑟夫。我之前已经走上了核心数据/ SQLite 的路线——但这太过分了。该应用程序是一个简单的烹饪应用程序。我只需要存储成分的名称和烹饪时间。然后用这些原料组成饭菜。我可能会简单地制作一组新的饭菜并将成分复制到那顿饭中 - 但不是数组项。简单的内容并保留在新的。所以没有参考。永远只会有几顿饭。感谢您的回复。
    【解决方案2】:

    只需做一个:[项目哈希]

    但是……

    听起来您只想创建一个从“膳食”到“配料”的引用数组。 NSArray 或 NSMutableArray 将保留您的“成分” - 并在数组释放时释放它。

    【讨论】:

    • 谢谢布拉德。我一直在查看项目哈希。如果我的想法是正确的,那似乎引用了数组项内存?您说得对,膳食数组只是一堆对成分的引用。 NSMutableArray 是我前进的方向。要看一下 CFArray,因为我以前从未使用过它们。谢谢。
    • 我有点模糊 - 但我相信 NSArray 会简单地保留您放置在其中的对象。 (我原本以为 NSArray 会copy它,但我不这么认为)。
    • NSArray 确实保留了它的 NSObjects。
    猜你喜欢
    • 1970-01-01
    • 2010-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-13
    • 2019-05-01
    • 2016-11-12
    相关资源
    最近更新 更多