7
的NSSet持有強引用它的對象,這樣的目標C解決方案是使用NSHashTable.weakObjectsHashTable()一如何使一個弱引用斯威夫特設置
NSHashTable* mySet = [NSHashTable weakObjectsHashTable];
[mySet addObject:anyOldObject];
[mySet count]; //returns 1
[mySet containsObject:anyOldObject]; //returns true
在迅速然而,這似乎拉不工作
var mySet = NSHashTable.weakObjectsHashTable()
mySet.addObject(anyOldObject)
mySet.count //returns 1
mySet.containsObject(anyOldObject) //returns false
我錯過了什麼?或者這是一個錯誤?
你期望mySet.allObjects也返回一個非空數組嗎?因爲它似乎沒有。 –
是的,我正在離開,作爲一個讀者的練習:)我一點也不明白 – Hammer
不,我也沒有。我不能假裝對weakObjectsHashTable瞭解太多,但它肯定會感覺到* buggy。 –