其他分享
首页 > 其他分享> > rust index

rust index

作者:互联网

use std::collections::HashMap;
use std::ops::Index;
#[derive(Debug,Clone)]
struct Cell{
    name:String
}
type Col = HashMap<String, Vec<Cell>>;
#[derive(Debug,Clone)]
struct DF{
    columns: Vec<Col>
}

impl Index<&str> for DF{
    type Output = i32;
    fn index(&self, c:&str)->&i32 {
        println!("索引字符是: {}", &c);

        &2_i32
    }
}

fn main() {
    let mut a = HashMap::new();
    a.insert(String::from("A"), vec![Cell{name:String::from("A1")}, Cell{name:String::from("A2")}]);
    let mut b = HashMap::new();
    b.insert(String::from("B"), vec![Cell{name:String::from("B1")}, Cell{name:String::from("B2")}]);
    let df = DF{ columns:vec![a, b]};
    println!("{:?}", df["C"]);
}

  

标签:index,HashMap,DF,name,Cell,vec,rust,String
来源: https://www.cnblogs.com/pythonClub/p/16498159.html