测试eval的filename,与lineno参数使用
# =============================
# 目标1:
# 1、测试eval的filename,与lineno参数使用
# =============================
# 结论
# 1、可以自定义程序出错时的出错信息(出错的文件名,程序在哪行执行的,方便出错日志的查询,错误的定位)
# =============================
class MyClass
def my_method
string = "1/0"
# eval(string, nil, __FILE__, __LINE__)
eval(string, nil, "custom_file.rb", 60)
# eval(string)
end
end
MyClass.new.my_method # custom_file.rb:60:in `/': divided by 0 (ZeroDivisionError)