Ruby 超级计算机的参数
我有一个调用基本实现的方法:Ruby 超级计算机的参数,ruby,Ruby,我有一个调用基本实现的方法: class B def m x, y x + y end end class C < B def m x, y super * 10 end end B类 defmx,y x+y 结束 结束 C类C.new.m1,2,3#ArgumentError 谢谢,这很有道理。此外,在调用super时可以省略*args。@akonsu感谢您的帮助。如果不使用参数,则无需命名参数def m(*)就足够了。
class B
def m x, y
x + y
end
end
class C < B
def m x, y
super * 10
end
end
B类
defmx,y
x+y
结束
结束
C类
由于我从未在派生方法中引用参数,是否有办法避免在C.m
中使用参数名称?我认为这是您能找到的最接近的方法:
class B
def m x, y
x + y
end
end
class C < B
def m *args
super * 10
end
end
=> C.new.m 10, 10 # 200
=> C.new.m 1, 2, 3 # ArgumentError
B类
defmx,y
x+y
结束
结束
C类C.new.m 10,10#200
=>C.new.m1,2,3#ArgumentError
谢谢,这很有道理。此外,在调用super时可以省略*args。@akonsu感谢您的帮助。如果不使用参数,则无需命名参数<代码>def m(*)就足够了。