相关疑难解决方法(0)

裸星号作为方法定义中的参数:def f(*)

我知道这意味着什么:

def f(*args)
  ...
end
Run Code Online (Sandbox Code Playgroud)

但是这意味着什么,为什么要使用它呢?它也可以出现在命名参数中吗?

def f(*)
  ...
end
Run Code Online (Sandbox Code Playgroud)

ruby parameters

22
推荐指数
1
解决办法
4635
查看次数

使用作为参数时的"*"的含义(不像*arg,只是*)

当我阅读Rails代码时,我发现了这一点

def save(*)
  create_or_update || raise(RecordNotSaved)
end
Run Code Online (Sandbox Code Playgroud)

怎么*办?:O我知道当我们使用它时会发生什么*args,但在这种情况下,它很简单*.

参考https://github.com/rails/rails/blob/master/activerecord/lib/active_record/persistence.rb#L119

ruby ruby-on-rails

8
推荐指数
2
解决办法
201
查看次数

标签 统计

ruby ×2

parameters ×1

ruby-on-rails ×1