【问题标题】:Syntax to use to call methods-on-pointers用于调用指针方法的语法
【发布时间】:2014-03-14 22:07:01
【问题描述】:

一些问题like this 遇到问题,在某些情况下调用:

obj.method()

如果method 接受指向对象的指针,则无效。但在某些情况下它是有效的(比如 obj 是可变的)。

问题:应该始终使用(&obj).method() 来保持一致性吗?否则,根据obj 的传递方式,在相同“类型”上调用相同方法的代码会不一致。

【问题讨论】:

    标签: go


    【解决方案1】:

    不,您应该仅在绝对必要时引用或取消引用该对象。 Go 在使用 selectors 时会根据需要执行此操作,并且无论如何都会使用正确的接收器类型调用该方法。如果你不这样写,你只会让试图阅读你代码的人感到困惑。

    【讨论】:

      猜你喜欢
      • 2020-09-02
      • 1970-01-01
      • 2014-11-19
      • 2012-05-09
      • 1970-01-01
      • 1970-01-01
      • 2013-09-17
      • 2022-10-14
      • 1970-01-01
      相关资源
      最近更新 更多