在Ruby中运行时创建对象

PHP
<?PHP
$dynamicProperties = array("name" => "bob","phone" => "555-1212");
$myObject = new stdClass();
foreach($dynamicProperties as $key => $value) {
    $myObject->$key = $value;
}
echo $myObject->name . "<br />" . $myObject->phone;
?>

我如何在ruby这样做?

解决方法

如果你想做一个“动态的”正式课,使用 Struct
>> Person = Struct.new(:name,:phone)
=> Person
>> bob = Person.new("bob","555-1212")
=> #<struct Person name="bob",phone="555-1212">
>> bob.name
=> "bob"
>> bob.phone
=> "555-1212"

要使一个对象完全从一个哈希中完成,请使用OpenStruct

>> require 'ostruct'
=> true
>> bob = OpenStruct.new({ :name => "bob",:phone => "555-1212" })
=> #<OpenStruct phone="555-1212",name="bob">
>> bob.name
=> "bob"
>> bob.phone
=> "555-1212"

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...