如何在ruby中设置类作用域常量?
问题描述:
超级初学者容易点红宝石问题。我试图通过编程Project Euler问题来学习一些红宝石。所以我有一个测试如何在ruby中设置类作用域常量?
class ProjectEuler_tests < Test::Unit::TestCase
@solution = 123456 # Not the answer so as not to be a spoiler
def test_problem_1
assert_equal(@solution, ProjectEuler1.new.solve)
end
end
但是这不起作用,@测试运行时@解决方案为零。在课堂范围内分配它的正确方法是什么?
答
Class constants红宝石以大写字符:
class ProjectEuler_tests < Test::Unit::TestCase
SOLUTION = 123456 # Not the answer so as not to be a spoiler
def test_problem_1
assert_equal(SOLUTION, ProjectEuler1.new.solve)
end
end