1. 程式人生 > >函式及函式指標

函式及函式指標

1、匿名函式及函式變數的使用

package main

import "fmt"

func main() {

	f:= func(n int) error {   //匿名函式及函式指標定義
		fmt.Println(n)
		return nil
	}

	f(1)  //指標函式變數呼叫函式
}


//print 1

2、通過map存放函式指標,及呼叫

package main

import "fmt"

func main() {
	funcs := make(map[string]interface{})      //定義map, value為空介面,支援所有型別

	funcs["func_add"] = func(i, j int) int {   //添加了一個匿名函式
		return i + j
	}

	f:= funcs["func_add"]       //通過key得到函式指標

    //呼叫函式,通過指標,這裡需要顯示宣告函式的格式
    //f.(函式宣告)(引數)

	ret:= f.(func(int,int)int)(2,3) 
	fmt.Println(ret)
}