04 自己的golang學習及速查筆記 函式

2021-10-09 03:55:40 字數 725 閱讀 9877

可以有多個返回值

所有引數都是值傳遞:slice、map、channel

函式可以作為變數的值(函式式程式設計 js)

函式可以作為引數和返回值

小例子:

把乙個無引數,無返回值的函式進行包裝,包裝成計時函式,可以列印消耗的時間

import

("fmt"

"time"

)func

sleepsecond()

// 包裝器

func

gettimecost

(fn func()

)func()

}func

main()

輸出start

3.0002455

func

sum(ops ...

int)

intreturn res

}func

main()

延遲執行,在函式丟擲異常、返回值之前執行,一般用於清理記憶體,釋放資源、鎖

func

clear()

func

testdefer()

intfunc

main()

輸出:clear all

10

Golang學習筆記 04

type stu struct 僅屬於結構體stu的方法 func s stu setname name string func s stu setage age int int func main 修改的是複製的n,而非原本的n func n myint plusnoptr func n myin...

自己的golang學習及速查筆記 基本語法

1.3 變數的初始化 2.常量 4.條件 5.switch go語言的基本型別有 go語言的引用型別 結構型別 在go中不允許進行隱式型別轉換,別名型別也不行 go 語言的變數宣告的標準格式為 var 變數名 變數型別 var 變數名 var a int var b變數宣告以關鍵字 var 開頭,後...

Golang實現自己的RPC框架

rpc session.go package rpc import encoding binary io net 編寫資料會話中讀寫 會話連線的結構體 type session struct 建立新連線 func newsession conn net.conn session 向連線中寫資料 fu...