100-go-mistakes/12-optimizations/95-stack-heap/main.go
2021-12-27 15:56:17 +01:00

41 lines
418 B
Go

package main
func listing1() {
a := 3
b := 2
c := sumValue(a, b)
println(c)
}
//go:noinline
func sumValue(x, y int) int {
z := x + y
return z
}
func listing2() {
a := 3
b := 2
c := sumPtr(a, b)
println(*c)
}
//go:noinline
func sumPtr(x, y int) *int {
z := x + y
return &z
}
func listing3() {
a := 3
b := 2
c := sum(&a, &b)
println(c)
}
//go:noinline
func sum(x, y *int) int {
return *x + *y
}