func和init示例
This commit is contained in:
parent
885b864baf
commit
f0a317e4a5
60
bilibili/src/func/test.go
Normal file
60
bilibili/src/func/test.go
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
package main
|
||||||
|
|
||||||
|
import "fmt"
|
||||||
|
|
||||||
|
func foo1(a string, b int) int {
|
||||||
|
fmt.Println("a = ", a)
|
||||||
|
fmt.Println("b = ", b)
|
||||||
|
|
||||||
|
c := 100
|
||||||
|
|
||||||
|
return c
|
||||||
|
}
|
||||||
|
|
||||||
|
func foo2(a string, b int) (int, int) {
|
||||||
|
fmt.Println("a = ", a)
|
||||||
|
fmt.Println("b = ", b)
|
||||||
|
|
||||||
|
return 666, 777
|
||||||
|
}
|
||||||
|
|
||||||
|
func foo3(a string, b int) (r1 int, r2 int) {
|
||||||
|
fmt.Println("---- foo3 ----")
|
||||||
|
fmt.Println("a = ", a)
|
||||||
|
fmt.Println("b = ", b)
|
||||||
|
|
||||||
|
fmt.Println("r1 = ", r1)
|
||||||
|
fmt.Println("r2 = ", r2)
|
||||||
|
|
||||||
|
// 给有名称的返回值变量赋值
|
||||||
|
r1 = 1000
|
||||||
|
r2 = 2000
|
||||||
|
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func foo4(a string, b int) (r1, r2 int) {
|
||||||
|
fmt.Println("---- foo4 ----")
|
||||||
|
fmt.Println("a = ", a)
|
||||||
|
fmt.Println("b = ", b)
|
||||||
|
|
||||||
|
// 给有名称的返回值变量赋值
|
||||||
|
r1 = 1000
|
||||||
|
r2 = 2000
|
||||||
|
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
c := foo1("abc", 555)
|
||||||
|
fmt.Println("c = ", c)
|
||||||
|
|
||||||
|
ret1, ret2 := foo2("haha", 999)
|
||||||
|
fmt.Println("ret1 = ", ret1, ", ret2 = ", ret2)
|
||||||
|
|
||||||
|
re1, re2 := foo3("foo3", 333)
|
||||||
|
fmt.Println("re1 = ", re1, ", re2 = ", re2)
|
||||||
|
|
||||||
|
res1, res2 := foo4("foo4", 333)
|
||||||
|
fmt.Println("res1 = ", res1, ", res2 = ", res2)
|
||||||
|
}
|
3
bilibili/src/init/go.mod
Normal file
3
bilibili/src/init/go.mod
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
module init
|
||||||
|
|
||||||
|
go 1.23
|
12
bilibili/src/init/lib1/lib1.go
Normal file
12
bilibili/src/init/lib1/lib1.go
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
package lib1
|
||||||
|
|
||||||
|
import "fmt"
|
||||||
|
|
||||||
|
// 当前lib1包提供的API
|
||||||
|
func Lib1Test() {
|
||||||
|
fmt.Println("Lib1Test.")
|
||||||
|
}
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
fmt.Println("lib1. init() ...")
|
||||||
|
}
|
12
bilibili/src/init/lib2/lib2.go
Normal file
12
bilibili/src/init/lib2/lib2.go
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
package lib2
|
||||||
|
|
||||||
|
import "fmt"
|
||||||
|
|
||||||
|
// 当前lib2包提供的API
|
||||||
|
func Lib2Test() {
|
||||||
|
fmt.Println("Lib2Test.")
|
||||||
|
}
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
fmt.Println("lib2. init() ...")
|
||||||
|
}
|
11
bilibili/src/init/main.go
Normal file
11
bilibili/src/init/main.go
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"init/lib1"
|
||||||
|
"init/lib2"
|
||||||
|
)
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
lib1.Lib1Test()
|
||||||
|
lib2.Lib2Test()
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user