Swift中声明协议中的class关键字的作用
发布时间:2020-12-14 07:05:43 所属栏目:百科 来源:网络整理
导读:大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 最近在Cocos2D编程for Swift中看到以下一个代码片段: protocol GameMode : class { var userInterface :CCNode! {get} func g
最近在Cocos2D编程for Swift中看到以下一个代码片段: protocol GameMode:class{
var userInterface:CCNode! {get}
func gameplay(mainScene:MainScene,droppedFallingObject:FallingObject)
func gameplay(mainScene:MainScene,caughtFallingObject:FallingObject)
func gameplayStep(mainScene:MainScene,delta:CCTime)->GameOver
}
注意在声明协议名后直接跟了一个class关键字,这是神马意思? 查阅Swift编程手册得知协议中的class关键字用来限制该协议只能应用在类上,原话是这么说的: “You can limit protocol adoption to class types (and not
structures or enumerations) by adding the class keyword
must always appear first in a protocol’s inheritance
list,before any inherited protocols”
所以如果你无所谓这个限制,你大可不必加class关键字,没有什么区别! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |