typealias使用与理解

2017-08-24  本文已影响0人  程序猿彭

typealias 是用来为已经存在的类型重新定义名字的,通过命名,可以使代码变得更加清晰。使用的语法也很简单,使用 typealias 关键字像使用普通的赋值语句一样,可以将某个已经存在的类型赋值为新的名字

示例:

typealias strs=String

let str:strs="string"

print(str)

打印string

对于普通类型并没有什么难点,但是在涉及到泛型时,情况就稍微不太一样。首先,typealias 是单一的,也就是说你必须指定将某个特定的类型通过 typealias 赋值为新名字,而不能将整个泛型类型进行重命名。下面这样的命名都是无法通过编译的:

class CompletionTask<T>{

}

错误代码:

typealias Completion=CompletionTask

typealias Completion=CompletionTask<T>

typealias Completion<T>=CompletionTask<T>

正确代码

typealias Completion=CompletionTask<String>

或者

typealias task=String

typealias Completion=CompletionTask<task>

上一篇 下一篇

猜你喜欢

热点阅读