Swift 是否存在一个协议来确定一个类型应该可以用字符串初始化?
我编写了以下代码来帮助将表单字段中的文本值转换为预期值:Swift 是否存在一个协议来确定一个类型应该可以用字符串初始化?,swift,string,foundation,primitive-types,Swift,String,Foundation,Primitive Types,我编写了以下代码来帮助将表单字段中的文本值转换为预期值: protocol StringConvertableValueType { init?(_ string: String) } extension Int: StringConvertableValueType { } extension String: StringConvertableValueType { } extension Double: StringConvertableValueType { } exten
protocol StringConvertableValueType {
init?(_ string: String)
}
extension Int: StringConvertableValueType {
}
extension String: StringConvertableValueType {
}
extension Double: StringConvertableValueType {
}
extension Float: StringConvertableValueType {
}
正如您所看到的,所有这些基本类型本身都支持相同的初始值设定项。然而,我找不到任何共享的协议
。虽然我觉得我在做一些已经建立起来的人所做的事情。
是否已经存在某种处理此问题的
协议
,或者创建基金会的人员只是确保API确实是一致的,但没有强制执行它的协议?我相信您正在寻找的是无损StringConverable
Int
继承自FixedWidthInteger
。对于一致性类型,这种瞬态协议继承不会出现在文档中。(这可能会让人困惑,如果给你带来麻烦,你可能会想扩展文档。)拥抱Rob,这就是我想要的。