相关疑难解决方法(0)

38
推荐指数
2
解决办法
4718
查看次数

如何在Go中存储对操作结果的引用?

好吧用文字描述它很难,但是假设我有一个存储int指针的地图,并希望将操作的结果存储为我的哈希中的另一个键:

m := make(map[string]*int)

m["d"] = &(*m["x"] + *m["y"])
Run Code Online (Sandbox Code Playgroud)

这不起作用,并给我错误: cannot take the address of *m["x"] & *m["y"]

思考?

dictionary pointers go

7
推荐指数
1
解决办法
1464
查看次数

为什么Go的构造函数会返回地址?

我知道Go没有任何构造函数,并且New func在它的位置使用了a ,但是根据这个例子.

func NewFile(fd int, name string) *File {
  if fd < 0 {
    return nil
  }
  f := File{fd, name, nil, 0}
  return &f
}
Run Code Online (Sandbox Code Playgroud)

他们总是回来&f.为什么只是回归File是不够的?

更新

我已经尝试将创建的对象返回到一个简单的结构,它很好.所以,我想知道返回地址是否是构造函数的标准方法.

谢谢.

constructor pointers go

6
推荐指数
1
解决办法
1477
查看次数

标签 统计

go ×3

pointers ×2

constructor ×1

dictionary ×1