C/C++ 에서 금지되었던, 로컬변수를 리턴하는일.
GO 에서는 가능하다.
이런일은 가비지컬렉션 기능이 있어야 가능한 일이다.
Note that, unlike in C, it's perfectly OK to return the address of a local variable;
the storage associated with the variable survives after the function returns.
package main
import "fmt"
type MyData struct {
num int
name string
}
func func1() ( *MyData) {
localVar := MyData{ 3, "data3" }
return &localVar
}
func main() {
p := func1()
fmt.Println(p.num, p.name)
}