初探swift语言的学习笔记四-2(对上一节有些遗留进行处理)
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                初探swift语言的学习笔记四-2(对上一节有些遗留进行处理)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                
                            
                            
                            作者:fengsh998
 
 原文地址:http://blog.csdn.net/fengsh998/article/details/30314359
 
 轉(zhuǎn)載請注明出處
 
 如果覺得文章對你有所幫助,請通過留言或關(guān)注微信公眾帳號fengsh998來支持我,謝謝!
 
 
 import?Foundation??  ??  typealias?Point?=?(Int,?Int)??  ??  let?origin:?Point?=?(0,?0)??  ??  ??  //初始化函數(shù)用??  func?willDoit(sender?:?CallBackManager)??  {??  ????println("willDoit?defaulft.")??  }??  ??  func?didDoit(sender?:?CallBackManager)??  {??  ????println("didDoit?defaulft.")??  }??  ??  class?CallBackManager??  {??  ????//聲明兩個函數(shù)變量??  ????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)??  ????}??  ??????  ????//函數(shù)地址作為形參傳遞??  ????func?testparams(addfunc:(Int,Int)->(Int),instruction?:?String)?->Bool??  ????{??  ????????println("3?+?5?=?\(addfunc(3,5))?,?第二個參數(shù)值為:\(instruction)")??  ????????return?true??  ????}??  ??????  ????//函數(shù)作為返回值??  ????func?testfunctionReturn(instruction?:?String)?->?(Int,Int)?->?Int??  ????{??  ????????func?Multiplication(a:Int,b:Int)?->Int??  ????????{??  ????????????return?a?*?b??  ????????}??  ??????????  ????????return?Multiplication??  ????}??  ??????  ????//自動閉包類型??  ????//調(diào)用simpleAssert(testNumber?%?2?==?0,?"testNumber?isn't?an?even?number.")??  ????func?simpleAssert(condition:?@auto_closure?()?->?Bool,?message:?String)?{??  ????????if?!condition()?{??  ????????????println(message)??  ????????}??  ????}??  ??????  ????//可變參數(shù)??  ????func?unknowParam(slist?:?String...)??  ????{??  ????????var?ret?:?String?=?""??  ????????for?usb?in?slist??  ????????{??  ????????????println(usb)??  ????????????ret?+=?(usb?+?",")??  ????????}??  ????}??  ??????  ????//使用泛型??  ????//simpleMin(17,?42)?????????????????//整型參數(shù)??  ????//simpleMin(3.14159,?2.71828)???????//浮點型??  ??  ????func?simpleMin<T:?Comparable>(x:?T,?y:?T)?->?T?{??  ????????if?x?<?y?{??  ????????????return?y??  ????????}??  ????????return?x??  ????}??  }??  
 
 
 class?ViewController:?UIViewController?{??  ??????  ??????  ????func?willcallback(callback?:?CallBackManager)??  ????{??  ????????println("回調(diào)前結(jié)果\(callback.callbackName)")??  ????}??  ??????  ????func?didcallback(callback?:?CallBackManager)??  ????{??  ????????println("回調(diào)后結(jié)果\(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:?"測試函數(shù)作為傳參")??  ??????????  ????????let?funcMulti?=?test.testfunctionReturn("返回函數(shù)地址")??  ??????????  ????????let?ret?=?funcMulti(5,5)??  ????????println("5?*?5?=?\(ret)")??  ??????????  ????????return;}??  } ? 
                            
                        
                        
                        
 
 
在上一節(jié)中有些問題還沒有弄清,在這里自己寫了一下,做了一下驗證,并希望能給讀者有所幫助。
看例子:
例子中包括
callback函數(shù)的聲明與使用
函數(shù)作為形參進行傳遞
函數(shù)作為返回值
函數(shù)支持泛型,當(dāng)然class也支持。
[cpp]?view plaincopy
調(diào)用:
[cpp]?view plaincopy
總結(jié)
以上是生活随笔為你收集整理的初探swift语言的学习笔记四-2(对上一节有些遗留进行处理)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 初探swift语言的学习笔记三(闭包-匿
- 下一篇: 初探swift语言的学习笔记六(ARC-
