日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

初探swift语言的学习笔记四-2(对上一节有些遗留进行处理)

發布時間:2024/9/30 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 初探swift语言的学习笔记四-2(对上一节有些遗留进行处理) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/30314359 轉載請注明出處 如果覺得文章對你有所幫助,請通過留言或關注微信公眾帳號fengsh998來支持我,謝謝!


在上一節中有些問題還沒有弄清,在這里自己寫了一下,做了一下驗證,并希望能給讀者有所幫助。

看例子:

例子中包括

callback函數的聲明與使用

函數作為形參進行傳遞

函數作為返回值

函數支持泛型,當然class也支持。

[cpp]?view plaincopy
  • import?Foundation??
  • ??
  • typealias?Point?=?(Int,?Int)??
  • ??
  • let?origin:?Point?=?(0,?0)??
  • ??
  • ??
  • //初始化函數用??
  • func?willDoit(sender?:?CallBackManager)??
  • {??
  • ????println("willDoit?defaulft.")??
  • }??
  • ??
  • func?didDoit(sender?:?CallBackManager)??
  • {??
  • ????println("didDoit?defaulft.")??
  • }??
  • ??
  • class?CallBackManager??
  • {??
  • ????//聲明兩個函數變量??
  • ????var?willdoitcallback?:?(CallBackManager)?->?()?=?willDoit??
  • ????var?diddoitcallback?:?(CallBackManager)?->?()?=?didDoit??
  • ??????
  • ????var?callbackName?=?"hello?world"??
  • ????init()??
  • ????{??
  • ??????????
  • ????}??
  • ??
  • ????func?testCall()??
  • ????{??
  • ????????self.willdoitcallback(self)??
  • ??????????
  • ????????callbackName?=?"reset?data"??
  • ????????println("to?do?something.")??
  • ??????????
  • ????????self.diddoitcallback(self)??
  • ????}??
  • ??????
  • ????//函數地址作為形參傳遞??
  • ????func?testparams(addfunc:(Int,Int)->(Int),instruction?:?String)?->Bool??
  • ????{??
  • ????????println("3?+?5?=?\(addfunc(3,5))?,?第二個參數值為:\(instruction)")??
  • ????????return?true??
  • ????}??
  • ??????
  • ????//函數作為返回值??
  • ????func?testfunctionReturn(instruction?:?String)?->?(Int,Int)?->?Int??
  • ????{??
  • ????????func?Multiplication(a:Int,b:Int)?->Int??
  • ????????{??
  • ????????????return?a?*?b??
  • ????????}??
  • ??????????
  • ????????return?Multiplication??
  • ????}??
  • ??????
  • ????//自動閉包類型??
  • ????//調用simpleAssert(testNumber?%?2?==?0,?"testNumber?isn't?an?even?number.")??
  • ????func?simpleAssert(condition:?@auto_closure?()?->?Bool,?message:?String)?{??
  • ????????if?!condition()?{??
  • ????????????println(message)??
  • ????????}??
  • ????}??
  • ??????
  • ????//可變參數??
  • ????func?unknowParam(slist?:?String...)??
  • ????{??
  • ????????var?ret?:?String?=?""??
  • ????????for?usb?in?slist??
  • ????????{??
  • ????????????println(usb)??
  • ????????????ret?+=?(usb?+?",")??
  • ????????}??
  • ????}??
  • ??????
  • ????//使用泛型??
  • ????//simpleMin(17,?42)?????????????????//整型參數??
  • ????//simpleMin(3.14159,?2.71828)???????//浮點型??
  • ??
  • ????func?simpleMin<T:?Comparable>(x:?T,?y:?T)?->?T?{??
  • ????????if?x?<?y?{??
  • ????????????return?y??
  • ????????}??
  • ????????return?x??
  • ????}??
  • }??

  • 調用:

    [cpp]?view plaincopy
  • class?ViewController:?UIViewController?{??
  • ??????
  • ??????
  • ????func?willcallback(callback?:?CallBackManager)??
  • ????{??
  • ????????println("回調前結果\(callback.callbackName)")??
  • ????}??
  • ??????
  • ????func?didcallback(callback?:?CallBackManager)??
  • ????{??
  • ????????println("回調后結果\(callback.callbackName)")??
  • ????}??
  • ??????
  • ????func?add(a:Int,b:Int)?->?Int??
  • ????{??
  • ????????return?a?+?b??
  • ????}??
  • ??
  • ????override?func?viewDidLoad()?{??
  • ????????super.viewDidLoad()??
  • ??
  • ????????var?test?=?CallBackManager()??
  • ????????test.willdoitcallback?=?willcallback??
  • ????????test.diddoitcallback?=?didcallback??
  • ????????test.testCall()??
  • ??????????
  • ????????test.testparams(add,instruction:?"測試函數作為傳參")??
  • ??????????
  • ????????let?funcMulti?=?test.testfunctionReturn("返回函數地址")??
  • ??????????
  • ????????let?ret?=?funcMulti(5,5)??
  • ????????println("5?*?5?=?\(ret)")??
  • ??????????
  • ????????return;}??
  • } ?
  • 總結

    以上是生活随笔為你收集整理的初探swift语言的学习笔记四-2(对上一节有些遗留进行处理)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。