可以有多個返回值
所有引數都是值傳遞: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...