老师 我想问一下使用类型别名有什么作用,一般什么情况下使用类型别名

jike_1088085 Swift 基础语法 最后由 jike_1805381 于09月02日回复

  • 2 回答
  • 1.7k 浏览

老师  我想问一下使用类型别名有什么作用,一般什么情况下使用类型别名

  • 极客学院-媛儿 2015年07月07日 回答 #1楼
  • 类型别名对当前的类型定义了另一个名字,类型别名通过使用typealias关键字来定义。

    根据特定的情况,你可能会使用其他的名字来引用某一类型,这时候就可以使用类型别名,比如使用来自外部特定大小的数据:

    typealias AudioSample = UInt16

    当你定义了类型别名,在代码中都可以使用类型别名对原名进行替代

    var maxAmplitudeFound = AudioSample.min

    // maxAmplitudeFound is now 0

    这里AudioSample被定义为UInt16的类型别名,因为这是别名,所以调用AudioSample.min和调用UInt16.min是等价的,这里为maxAmplitudeFound提供了初始值0。

  • 1 评论
  • jike_1805381 09月02日 回答 #2楼
  • 当你做项目时,不能确定一个值的类型,可以使用类型别名,方便之后修改

    比如a这个变量,我在做项目时不确定是int还是stirng,我暂时认为它应该是int

    那么我会这么写

    typealias TempType = int
    
    var a:TempType
    var b:TempType
    var c:TempType

    当我的项目进行到一半,我发现变量使用string类型更好,而不是使用int类型

    我可以将

    //typealias TempType = int改为
    typealias TempType = String

    而不用去项目一行一行的改a,b,c的类型

    或者可以用类型别名增加代码的可读性,比如

    typealias Age = int
    var a:Age

    可以让你清楚的知道a表示的是一个年龄,但是这样的弊端是会让你忽略a的类型

    还有一个作用就是减少代码量,把长变量编程段变量,

    但实际的项目要慎用类型别名,最简单的办法就是根本不用

  • 0 评论