5
我試圖找出一種避免保留週期的方法,當週期中的某些引用被保存在集合中時。我的想法是創建一個包裝struct
:強制泛型類型參數是類類型?
struct Weak<T> {
unowned let value: T
init(_ value: T) {
self.value = value
}
}
這裏的問題是,unowned
和weak
成員必須是一個類類型(main.swift:3:17: 'unowned' cannot be applied to non-class type 'T'; consider adding a class bound
),但沒有合理的超我需要從T
繼承。
有什麼辦法可以強制T
是一個類的類型,而不從一個特定的其他類繼承?
這工作,謝謝!這是文檔中的任何地方嗎? –
是的,閱讀泛型定義的語法部分。在AnyObject上的iBook上進行搜索以獲取有關該協議的更多信息。 –