Project1

标题: 同時輸出區域變數的值與名稱? [打印本页]

作者: nokaiwai    时间: 2013-11-5 15:11
标题: 同時輸出區域變數的值與名稱?
事因在做一些有關除錯方面的方法,常常用到一個區域變數的名稱與值。
大約如下︰
RUBY 代码复制
  1. module M
  2.   def b(var_name,var_value)
  3.      ###########
  4.   end
  5. end
  6. class C
  7.   def a(x,y,z)
  8.     M.b(:x,x)
  9.     M.b(:y,y)
  10.     M.b(:z,z)
  11.   end
  12. end
  13. c = C.new.a(1,3,4)

是否有一些方法可使 M.b 由變量名稱 取得 c.a 的中區域變數的值?
RUBY 代码复制
  1. module M
  2.   def b(var_name)
  3.      var_value = ???????????????????
  4.      ###########
  5.   end
  6. end
  7. class C
  8.   def a(x,y,z)
  9.     M.b(:x)
  10.     M.b(:y)
  11.     M.b(:z)
  12.   end
  13. end
  14. c = C.new.a(1,3,4)

作者: 喵呜喵5    时间: 2013-11-5 17:14
有点看不懂你在说什么……试试attr_reader?
http://www.66rpg.com/articles/3214

作者: nokaiwai    时间: 2013-11-5 21:07
謝謝你的回復。 但是 attr_reader 那類東西應該不能用在區域變量?




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1