golang走起(一)对象与指针

前端之家收集整理的这篇文章主要介绍了golang走起(一)对象与指针前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

golang走起(一)对象与指针@H_301_2@

代码如下:

package@H_301_7@ main

import@H_301_7@ (
    "fmt"@H_301_7@
)

type@H_301_7@ Person struct@H_301_7@ {
    age int@H_301_7@
}

func@H_301_7@ Create(a int@H_301_7@) (p Person) {
    return@H_301_7@ Person{age: a}
}

func@H_301_7@ Add(p Person) {
    p.age += 10@H_301_7@
}

func@H_301_7@ Add1(p *Person) {
    p.age += 10@H_301_7@
}

func@H_301_7@ main() {
    p := Create(10@H_301_7@)
    fmt.Println(p)

    Add(p)
    fmt.Println(p)

    Add1(&p)
    fmt.Println(p)
}

运行结果如下:

{10}@H_301_7@@H_301_7@
{10}@H_301_7@@H_301_7@
{20}@H_301_7@@H_301_7@

可以看到对象是没有改变的,指针是改变的

猜你在找的Go相关文章