使用指向链接列表的指针存储 NSMutableDictionary 一个 C 结构
Posted
技术标签:
【中文标题】使用指向链接列表的指针存储 NSMutableDictionary 一个 C 结构【英文标题】:Storing NSMutableDictionary a C struct with a pointer to a link list 【发布时间】:2012-09-18 03:25:10 【问题描述】:我有这个 C 结构(使用 malloc 分配,因此在堆中)我想存储在 NSMutableDictionary 中,因为我想避免重新创建 C 结构,这是一个复杂的过程。
通常使用 C 结构,我知道我可以使用 NSData 对象来存储位,然后将其放入诸如 NSArray 和 NSDictionary 之类的 Objective-C 容器中。但是,我要保存的结构包含指向 C 链接列表的指针,这就是我要避免重新创建的原因。我宁愿将指针保存在像 NSDictionary 这样的容器中,并在需要时获取它。
问题是,在不重新创建结构的情况下重用结构的最佳方法是什么?
我正在考虑将指针存储到结构本身。由于指针实际上只是一个数字,我可以将它存储在 NSNumber 中吗?如果可以,我用什么?无符号长长?
示例:[NSNumber numberWithUnsignedLongLong:aPointer];
PS:顺便说一句,这是为 iPhone 准备的。
【问题讨论】:
【参考方案1】:指针不是数字(至少在NSNumber
的意义上不是)。但它是一个价值。事实上你可以使用[NSValue valueWithPointer:myPtr]
。
【讨论】:
这让我想起了。我以前用过,忘记了!谢谢。以上是关于使用指向链接列表的指针存储 NSMutableDictionary 一个 C 结构的主要内容,如果未能解决你的问题,请参考以下文章