AssociatedType与Self.AssociatedType之间的区别
创始人
2024-09-20 19:01:09
0

将AssociatedType定义为类型的协议,使用关联类型(associatedtype)指定此协议的类型实现,使用Self.AssociatedType指定协议实现者的类型。

AssociatedType定义:

protocol SomeProtocol {
   associatedtype ItemType
   func append(_ item: ItemType)
}

struct Stack: SomeProtocol {
   // 用 T 替代 ItemType
   typealias ItemType = T
   var items = [ItemType]()
   mutating func push(_ item: ItemType) {
       items.append(item)
   }
   mutating func pop() -> ItemType {
       return items.removeLast()
   }
   // 遵循协议 实现使用另一种类型的方法
   mutating func append(_ item: Int) {
       self.push(item as! T)
   }
}

Self.AssociatedType定义:

protocol SomeProtocol {
   associatedtype ItemType
   func append(_ item: Self.ItemType)
}

struct Stack: SomeProtocol {
   var items = [T]()
   mutating func push(_ item: T) {
       items.append(item)
   }
   mutating func pop() -> T {
       return items.removeLast()
   }
   // 遵循协议 实现使用另一种类型的方法
   mutating func append(_ item: Int) {
       self.push(item as! T)
   }
}

相关内容

热门资讯

黑科技教学(wpk最新黑科技)... 黑科技教学(wpk最新黑科技)Wpk辅助器(wPK)真是真的是有挂(果真有挂)-哔哩哔哩1、让任何用...
黑科技游戏(wpk ai辅助)... 黑科技游戏(wpk ai辅助)wpk德州透视辅助(wpK)竟然是真的有挂(有挂透视)-哔哩哔哩wpk...
黑科技脚本(wpk ai辅助)... 黑科技脚本(wpk ai辅助)wpk辅助透视教学(WPk)确实是真的有挂(的确有挂)-哔哩哔哩1、下...
黑科技ai(wpk最新黑科技)... 黑科技ai(wpk最新黑科技)wpk数据手机软件叫啥(wPK)都是是真的有挂(有挂攻略)-哔哩哔哩;...
黑科技了解(wpk最新黑科技)... 黑科技了解(wpk最新黑科技)wpk透视辅助可测试是真的假的(WPk)确实真的是有挂(揭秘有挂)-哔...
黑科技工具(wpk ai辅助)... 黑科技工具(wpk ai辅助)wpk俱乐部有外挂吗(Wpk)确实真的是有挂(存在有挂)-哔哩哔哩;1...
黑科技好友房(wpk ai辅助... 黑科技好友房(wpk ai辅助)微扑克wpk真的有辅助吗(wPK)一贯存在有挂(有挂方法)-哔哩哔哩...
黑科技ai(wpk ai辅助)... 黑科技ai(wpk ai辅助)Wpk辅助DPpoker(WPK)果然真的有挂(有挂教学)-哔哩哔哩;...
黑科技脚本(wpk最新黑科技)... 黑科技脚本(wpk最新黑科技)wpk ai辅助(wPK)一直是真的有挂(有挂工具)-哔哩哔哩运wpk...
黑科技插件(wpk ai辅助)... 您好,wpk辅助Dppoker这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302...