swift4 泛型(一)

作者: sttech | 来源:发表于2017-12-12 17:09 被阅读0次

    swift 泛型

    • OC 是没有泛型也不支持命命空间的,但是swift中这两者都有,本章主要介绍 泛型
    对于iOS开发者 使用泛型的优点是: 确保代码的灵活性,可重用的函数

    eg

        func show(name : String) {
              print("Hello \(name)")
        }
        func show(age: Int){
              print("Hello \(age)")
        }
        func show(dog:Double){
              print("Hello \(dog)")
        }
        
    调用
     show(age: 10)
     show(name: "hahha")
     show(dog: 10.9)
    

    需要注意的是 swift 和oc的不同 oc的运行时语言,但是swift是编译时语言,所以系统会根据函数的参数的类型不同调用不同的函数,但是在开发中如何这样做会稍微有些冗余,而泛型带来的好处就是可以通过定义单个的函数来实现上面的功能

    则上三个方法可以改为以下的泛型函数
     func show<T>(para:T){
                print("Hello \(para)")
        }
    
      func testForShow<T ,U>(name : T,object : U){
                print("Hello \(name)" + "\(object)")
        }
        
    
    • ⚠️ LLVM 将c 和oc的代码放在一个共同的低级容器里,然后变异成机器语言,泛型并不是安全

    关于泛型的高级用法,将在(二)中讲解

    相关文章

      网友评论

        本文标题:swift4 泛型(一)

        本文链接:https://www.haomeiwen.com/subject/nuynixtx.html