一般做法是:
# 由于我不知道 XP 的 Ruby 版本,但是听说过 self 的问题,就用顶层 self 来判断了。 RGSS_VERSION = if RUBY_VERSION == '1.9.2' :VA elsif self :VX else :XP end # ... maybe in a class definition ... if RGSS_VERSION == :VA def some_method_in_va do_something_in_va end elsif RGSS_VERSION == :VX def some_method_in_vx do_something_in_vx end else # XP end
# 由于我不知道 XP 的 Ruby 版本,但是听说过 self 的问题,就用顶层 self 来判断了。
RGSS_VERSION = if RUBY_VERSION == '1.9.2'
:VA
elsif self
:VX
else
:XP
end
# ... maybe in a class definition ...
if RGSS_VERSION == :VA
def some_method_in_va
do_something_in_va
end
elsif RGSS_VERSION == :VX
def some_method_in_vx
do_something_in_vx
end
else
# XP
end
|