私はSwift 2を使用しており、弱いオブジェクトのセットを保存する方法としてWeakContainerを使用しています。NSHashTable.weakObjectsHashTable()
struct WeakContainer<T: AnyObject> {
weak var value: T?
}
public protocol MyDelegate : AnyObject {
}
次に、ViewController で宣言します。
public var delegates = [WeakContainer<MyDelegate>]
しかし、それはエラーです
MyDelegate をプロトコル AnyObject に準拠する具象型として使用することはサポートされていません
エラーは、メンバーWeakContainerがvalueとして宣言されてweakいるため、オブジェクトであるTと予想されます。しかし、私も , と宣言MyDelegateしAnyObjectます。これを回避する方法は?