首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Ruby中,“错误的参数数量(1代表0)”是什么意思?

在Ruby中,“错误的参数数量(1代表0)”是什么意思?
EN

Stack Overflow用户
提问于 2011-09-24 14:34:52
回答 4查看 102.6K关注 0票数 60

“参数错误:错误的参数数量(1代表0)”是什么意思?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-09-25 01:55:17

当您定义一个函数时,您还定义了该函数工作所需的信息(参数)。如果它被设计为在没有任何额外信息的情况下工作,并且您传递了一些信息,那么您将收到该错误。

示例:不带参数:

代码语言:javascript
复制
def dog
end

接受参数:

代码语言:javascript
复制
def cat(name)
end

当你调用它们时,你需要用你定义的参数来调用它们。

代码语言:javascript
复制
dog                  #works fine
cat("Fluffy")        #works fine


dog("Fido")          #Returns ArgumentError (1 for 0)
cat                  #Returns ArgumentError (0 for 1)

请查看Ruby Koans了解所有这些内容。

票数 93
EN

Stack Overflow用户

发布于 2011-09-24 14:35:52

你给一个不带任何参数的函数传递了一个参数。例如:

代码语言:javascript
复制
def takes_no_arguments
end

takes_no_arguments 1
# ArgumentError: wrong number of arguments (1 for 0)
票数 11
EN

Stack Overflow用户

发布于 2011-09-24 14:36:38

我假设你调用了一个带参数的函数,这个参数没有定义任何参数。

代码语言:javascript
复制
def f()
  puts "hello world"
end

f(1)   # <= wrong number of arguments (1 for 0)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7537450

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档