golang走起(一)对象与指针
代码如下:
package main
import (
"fmt"
)
type Person struct {
age int
}
func Create(a int) (p Person) {
return Person{age: a}
}
func Add(p Person) {
p.age += 10
}
func Add1(p *Person) {
p.age += 10
}
func main() {
p := Create(10)
fmt.Println(p)
Add(p)
fmt.Println(p)
Add1(&p)
fmt.Println(p)
}
运行结果如下:
{10}
{10}
{20}
可以看到对象是没有改变的,指针是改变的