2012-09-18 45 views
3

我有這個C結構(分配與malloc,因此在堆中)我想存儲在NSMutableDictionary,因爲我想避免重新創建C結構是一個複雜的過程。存儲NSMutableDictionary一個C結構與指向鏈接列表

通常與C結構我知道我可以使用NSData對象來存儲位,然後把它放在Objective-C容器,如NSArray和NSDictionary。但是,我想要保存的結構包含一個指向C鏈接列表的指針,這就是爲什麼我想避免重新創建的原因。我寧願只是將指針保存在NSDictionary之類的容器中,並在需要時將其取出。

問題是,能夠在不重新創建結構的情況下重用結構的最佳方式是什麼?

我想存儲指針結構本身。由於指針實際上只是一個數字,我可以將它存儲在NSNumber中嗎?如果可以,我該用什麼?無符號long long?

實施例:[NSNumber numberWithUnsignedLongLong:aPointer];

PS:這是iPhone順便說一句。

回答

3

指針不是一個數字(至少在NSNumber的意義上不是這樣)。但這是一個價值。而實際上你可以使用[NSValue valueWithPointer:myPtr]

+0

這提醒了我。我以前用過它,我忘了!謝謝。 – huggie