Ruby支持类型提示吗?

前端之家收集整理的这篇文章主要介绍了Ruby支持类型提示吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
PHP示例:
function do_something(int $i) {
    return $i + 2;
}

Ruby示例:

class MyClass
    # ...
end

def do_something(MyClass x)
    x.prop1 = "String..."
end

有什么类似的吗?谢谢.

解决方法

Ruby没有这样的东西,但你所要做的就是添加一行,如下所示:
def do_something(x)
  raise "Argument error blah blah" unless x.kind_of?(MyClass)
  ...
end

没有大碍.但如果你觉得它太冗长,那么只需定义一个方法

module Kernel
  def verify klass,arg
    raise "Argument error blah blah" unless arg.kind_of?(klass)
  end
end

把它放在第一行:

def do_something(x)
  verify(MyClass,x)
  ...
end
原文链接:https://www.f2er.com/ruby/270616.html

猜你在找的Ruby相关文章