小编joe*_*joe的帖子

哪个更好?创建实例变量或在Ruby中传递局部变量?

通常,创建可从多种方法访问的实例变量或创建仅作为参数传递给这些方法的实例变量的最佳实践和优点/缺点是什么。从功能上讲,它们是等效的,因为方法仍然可以使用变量来完成工作。虽然如果您正在更新变量并想返回更新的值,我会看到一个好处,但是在我的特定情况下,变量永远不会更新,只能由每种方法读取以决定如何操作。

示例代码要清楚:

class Test
  @foo = "something"

  def self.a
    if @foo == "something"
      puts "do #{@foo}"
    end
  end

  a()
end
Run Code Online (Sandbox Code Playgroud)

class Test
  foo = "something"

  def self.a(foo)
    if foo == "something"
      puts "do #{foo}"
    end
  end

  a(foo)
end
Run Code Online (Sandbox Code Playgroud)

ruby

5
推荐指数
1
解决办法
1622
查看次数

标签 统计

ruby ×1