Go-指针、传值与传引用、垃圾回收

来源:互联网 发布:手机淘宝2015旧版本5.4 编辑:程序博客网 时间:2024/06/05 14:39

要点

  • Go使用的*、&、new()这些运算符,和C++的用法完全一样。
  • 有传值和传引用/传地址的概念,和C++一样。
  • Go没有new对应的delete操作,而是采用Java一样的垃圾自动回收机制。
  • 传引用或指针主要用于用户自定义类型。

示例

package mainimport "fmt"/*D:\examples>go run helloworld.go101005100D:\examples>*/func main() {    i := 10     pass_by_value(i)    fmt.Println(i)    pass_by_reference(&i)    fmt.Println(i)    x := new(int)    *x = 5     fmt.Println(*x)    pass_by_reference(x)    fmt.Println(*x)}func pass_by_value(i int) {    i = 100}func pass_by_reference(i *int) {    *i = 100}
0 0
原创粉丝点击