1
Ruby에 REPL과 같은 것을 쓰고 있으며 실행시에 vars를 정의해야합니다. eval을 사용해야한다는 것을 알았지 만 irb 세션에서 발췌하여 테스트 해 보았습니다. 1.9.3에서 (즉, 1.8에서 일 것이다)Ruby 1.9.3 eval로 var 정의하기
> eval 'a = 3'
=> 3
> a
=> NameError: undefined local variable or method `a' for main:Object
그들은 1.9에서 변경 : 1.9 이후 변경 같은
> eval 'a = 3'
=> 3
> eval 'a'
=> 3
그래서 보인다. eval (또는 비슷한 것)을 사용하여 1.9.3에서 vars를 어떻게 정의 할 수 있습니까?
사실이 아니라면 컨텍스트 외부에서 변수를 읽을 수 없습니다. 다음은 작동 할 것입니다. a = b.eval ('a') –
@KennethBaltrinic 저는 이것을 "외부에서 읽기"라고 부르지 않을 것입니다. 당신은 단지 당신을 위해 그것을 읽을 수있는 문맥을 요구하고 있습니다 :) – Eevee