Eval을 사용하여 클래스의 인스턴스를 만들고 싶습니다.eval을 사용한 인스턴스 개체 액세스
완벽하게 작동합니다.
하지만 개체에 액세스 할 수 없습니다.
carreg = "bmw"
Eval(carreg+"= Car.new") < should evaluate to bmw = Car.new
괜찮습니다. 완전한. 하지만 bmw.inspect
을 입력하면 아무런 변화가 없습니다. 어떤 아이디어?
편집 : 내가 수동으로 bmw = Car.new
을한다면, 나는 다음 개체에 액세스 할 수 있습니다 IRB에
...처럼 당신은 클래스가 작동하는 방법을 찾아 볼 필요가 bmw.inspect
왜이 경우'eval'을 사용하고 있습니까? 당신이 잘못된 문제를 해결하려고한다고 생각하니? –
새로 워진 Ruby. 나에게 참아주십시오 :-) 사용자에게 묻습니다. 'puts "Reg 플레이트?" 'carreg = gets.chomp'. 어떻게 그럴 수 있습니까? –
당신은 그 모든 것을하지 않을 것입니다, 당신은 단지'car = Car.new (carreg)'라고 말하고'Car'는 그것이 BWM이라는 것을 알게합니다. –