protocol MyProtocol {}enum MyEnum: MyProtocol {}struct MyStruct: MyProtocol {}class MyClass: MyProtocol {}func MyFunction(parameter: MyProtocol.Type) -> String { return "Hi"}
为什么我在分配变量时必须使用.self …
var variable: MyProtocol.Type = MyStruct.self
而不是当我传递元类型作为函数参数?
var result = MyFunction(MyStruct)解决方法 它看起来像是编译器错误.我个人觉得.self应该包含在函数参数中.
但是,一旦Swift的源代码在今年晚些时候发布,可能会有更好的解释.与此同时,您可以提交雷达.
编辑:如果Class.Type是唯一的函数参数,它似乎放弃.self要求. Swift leave out .self to invoke a function which needs metatype?
总结以上是内存溢出为你收集整理的ios – Swift元分型不一致全部内容,希望文章能够帮你解决ios – Swift元分型不一致所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)