【发布时间】:2013-07-18 18:55:05
【问题描述】:
我的代码在class_eval 部分中有一个# 符号。这对我来说很陌生,这是什么意思?
class Class
def attr_accessor_with_history(attr_name)
attr_name = attr_name.to_s # make sure it's a string
attr_reader attr_name # create the attribute's getter
attr_reader attr_name+"_history" # create bar_history getter
class_eval %Q{
def #{attr_name}=(attr_name)
@#{attr_name} = attr_name
@#{attr_name}_history = [nil] if @#{attr_name}_history.nil?
@#{attr_name}_history << attr_name
end
}
end
end
【问题讨论】: