Questions tagged «defined»

6
如何检查是否定义了类?
如何将字符串转换为类名,但前提是该类已经存在? 如果Amber已经是一个类,我可以通过以下方式将字符串从该类中获取: Object.const_get("Amber") 或(在Rails中) "Amber".constantize 但是,NameError: uninitialized constant Amber如果Amber还不是一门课,那么这两种方法都将失败。 我的第一个想法是使用该defined?方法,但它不会区分已经存在的类和不存在的类: >> defined?("Object".constantize) => "method" >> defined?("AClassNameThatCouldNotPossiblyExist".constantize) => "method" 因此,在尝试转换字符串之前,如何测试字符串是否为类命名?(好吧,begin/rescue块捕获NameError错误怎么样?太丑陋了吗?我同意...)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.