小编Hen*_*nry的帖子

如何动态访问结构属性?

我是 Rust 初学者,想知道如何struct动态访问 a的字段:

use std::collections::HashMap;

struct User {
    email: String,
    name: String,
}

impl User {
    fn new(attributes: &HashMap<String,String>) -> User {
        let mut model = User {
            email: "",
            name: "",
        };

        for (attr_name,attr_value) in attributes {
            // assign value "attr_value" to attribute "attr_name"
            // no glue how to do this
            // in php would be: $model->{$attr_name} = $attr_value;
            model.*attr_name *= attr_value;
        }

        model;
    }
}

fn main() {
    
    let mut map: HashMap::new();
    map.insert("email",String::from("foo@bar.de"));
    map.insert("name",String::from("John doe")); …
Run Code Online (Sandbox Code Playgroud)

rust

1
推荐指数
1
解决办法
414
查看次数

标签 统计

rust ×1