博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
swift protocol(协议) associatedtype关联类型
阅读量:6413 次
发布时间:2019-06-23

本文共 463 字,大约阅读时间需要 1 分钟。

定义一个协议时,有的时候声明一个或多个关联类型作为协议定义的一部分将会非常有用。关联类型为协议中的某个类型提供了一个占位名(或者说别名),其代表的实际类型在协议被采纳时才会被指定。你可以通过 associatedtype 关键字来指定关联类型。比如使用协议声明更新cell的方法:
  1. //模型  
  2. struct Model {  
  3.     let age: Int  
  4. }  
  5.   
  6. //协议,使用关联类型  
  7. protocol TableViewCell {  
  8.     associatedtype T  
  9.     func updateCell(_ data: T)  
  10. }  
  11.   
  12. //遵守TableViewCell  
  13. class MyTableViewCell: UITableViewCell, TableViewCell {  
  14.     typealias T = Model  
  15.     func updateCell(_ data: Model) {  
  16.         // do something ...  
  17.     }  
  18. }  

转载于:https://www.cnblogs.com/ruixin-jia/p/9079449.html

你可能感兴趣的文章
js使用正则表达式判断手机和固话格式
查看>>
计算机是怎么存储数字的
查看>>
github精选:微信小程序开发技巧(12月31日更新)2016
查看>>
struts2 中文 url参数
查看>>
CentOS 6系统优化脚本
查看>>
shell 脚本练习3
查看>>
android之首选项相关 Preferences(二)组织首选项
查看>>
两天时间,安装kivy环境,python3.5不行,只能用python2.7
查看>>
移动电商成电商重点市场
查看>>
Spring MVC数据校验(使用@Validated对@RequestParam参数校验)
查看>>
以中国电影市场托底的阿里影业,国际化算盘打的响
查看>>
ipvsadm命令参考
查看>>
实现loading的代码
查看>>
javascript中关于变量定义及范围
查看>>
MySQL 8.0新特性--skip scan range access method(七)
查看>>
Here Document
查看>>
MySQL高可用性之keepalived+mysql双主
查看>>
LVS类型之NAT
查看>>
SQL SERVER 2005如何建立自动备份的维护计划
查看>>
权限及权限管理
查看>>