Tag: 元编程

我可以在Ruby中动态调用数学运算符吗?

ruby中有这样的东西吗? send(+, 1, 2) 我想让这段代码看起来不那么多余 if op == “+” return arg1 + arg2 elsif op == “-” return arg1 – arg2 elsif op == “*” return arg1 * arg2 elsif op == “/” return arg1 / arg2

在Ruby中动态设置局部变量

我有兴趣在Ruby中动态设置局部变量。 不创建方法,常量或实例变量。 所以类似于: args[:a] = 1 args.each_pair do |k,v| Object.make_instance_var k,v end puts a > 1 我特别想要局部变量,因为所讨论的方法存在于模型中,我不想污染全局或对象空间。

什么是Ruby中的“for”

在Ruby中: for i in A do # some code end 是相同的: A.each do |i| # some code end for不是内核方法: ruby究竟是什么“ for ” 有没有办法使用其他关键字来做类似的事情? 就像是: total = sum i in I {x[i]} 映射到: total = I.sum {|i] x[i]}