Ruby问题与class_eval

时间:2013-01-20 07:34:03

标签: ruby setter class-eval

我正在尝试运行以下内容,但我一直在使用

  

“NoMethodError:未定义的方法`bar ='for#/ Foo:0x86f69ba /”

    class Class
    def my_attr_accessor(name)

    attr_name = name.to_s  
    attr_reader name       
    attr_reader "my_"+name 
    class_eval %Q"def #{name}=(val)
                 @#{name}=val
                 end"
      end

    end

我实际上正在使用与此帖子类似的内容:Ruby - Using class_eval to define methods

编辑:你说得对,我做了改变以反映这一点......非常感谢。

1 个答案:

答案 0 :(得分:3)

class_eval是一种方法,但您在此处分配变量(class_eval =