Swift4.0复习泛型

1.泛型的基本使用:

/// 定义了一个泛型结构体MyStruct,
/// 其泛型形参为T
struct MyStruct<T> {
     
    /// 用泛型T定义存储式成员属性t
    var t: T
     
    /// 定义了一个实例方法method,
    /// 其参数类型也为T类型
    mutating func method(value: T) {
        t = value
        print("new value = (value)")
    }
     
    /// 定义类型方法swap,
    /// 它是一个泛型方法,
    /// 其泛型形参为E
    static func swap<E>(a: inout E, b: inout E) {
        // 这里tmp为E类型
        let tmp = a
        a = b
        b = tmp
    }
}

2.类型约束:

3.泛型where从句:

原文地址:https://www.cnblogs.com/pengsi/p/8514302.html