5 8 Swift函式型別

2021-07-25 10:55:19 字數 1647 閱讀 2286

/**

(8)函式型別

函式型別變數

/ 常量

函式型別引數

函式型別返回值 */

// 這個是變數

自動識別為整型

//        var calfunc = add(a: <#t##int#>, b: <#t##int#>)

//        var calfunc = add(a: 5, b: 3)

// 定義乙個函式型別變數

//    var  calfunc: (int, int) -> int = add

// 這個是函式變數

varcalfunc: (

int,

int) ->

int=

add

calfunc =

sub

print

("------------->")

print

(calfunc(4,

6))

letnum =

calfunc2

(a:

4, b:

2, op:

sub)

print

("------------->")

print

(num)

// 因此我們可以得出乙個結論,函式型別可以作為函式返回值型別,也可以作為函式引數型別

varmyfunc:(

int,

int) ->

int=

choosefunc

(getmax:

false)

print

("------------->")

print

(myfunc(2,

9))

func

add(a:

int, b:

int) ->

int

func

sub(a:

int, b:

int) ->

int

// 上面這兩個

add  sub

函式它們的引數型別一樣,返回值型別一樣

// 這就是所謂的函式型別

引數型別

-> 

返回值型別

// (int, int) -> int

// 由函式的引數型別和函式的返回值型別決定的

// 函式型別引數

func

calfunc2(a:

int, b:

int, op: (

int,

int) ->

int) ->

int

func

max(a:

int, b:

int) ->

int

func

min(a:

int, b:

int) ->

int

// 返回值是函式型別

func

choosefunc(getmax:

bool

) ->  ( (

int,

int) ->

int)

Swift函式型別

在swift中,可以定義int,double,array,string 等資料型別,作為函式,每個函式都有自己的函式型別,函式型別由函式的引數型別和返回值型別決定。例如 func addtwoints a int,b int int該函式函式型別為 int,int int 前面的內容由引數型別決定,...

Swift學習筆記(三十四) 函式型別

1 函式也可以賦值給乙個變數,此時這個變數的型別是什麼呢?import foundation func add a int,b int int let anotheradd int,int int add anotheradd 3,4 2 如果引數的返回值為空,那麼這個函式型別應該怎麼寫呢?impo...

Swift 型別轉換

import uikit 1.定義基類 mediaitem 2.定義子類 movie 3.定義子類 song class mediaitem class movie mediaitem class song mediaitem let library movie name movie1 direct...