swift4 泛型(一)

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的代码放在一个共同的低级容器里,然后变异成机器语言,泛型并不是安全

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • TITLE: 编程语言乱炖 码农最大的烦恼——编程语言太多。不是我不学习,这世界变化快! 有时候还是蛮怀念十几、二...
    码园老农阅读 5,353评论 2 35
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,180评论 4 61
  • 今天没有写文章,而是看了一部电影。。。 在电影末尾导航语音播放的“前方有隧道。。。”久久回荡在我耳边。 我所劳碌的...
    麦禾米阅读 347评论 2 0
  • 昨天晚上跟虎宝妈商量去哪里拍照练手。突然想起来虎宝骑马,马场应该是个平时不多见的场景,于是约好今天一早出行。 去马...
    车小千阅读 378评论 1 0