Dzwebs.Net

撰写电脑技术杂文十余年

rust 获取enum枚举数据类型中的值

Admin | 2023-2-4 22:33:10 | 被阅次数 | 1570

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  rust里面的数据结构,很难想,若是学不会,那就是乱七八糟糊里糊涂的感觉,若是学得会,那就是精彩。

  下面给大家分享一下,如何获取enum枚举对象中的数据类型里面的值。

  一、自定义enum

  #[derive(Debug)]
  enum E{
Name(String),
Age(i32),
  }

  二、自定义获取enum中的值的函数

  fn getenumvalue(v:E)->String{
match v{
E::Name(v1)=>v1,
E::Age(v1)=>v1.to_string(),
_=> String::from("...")
}
  }

  此处的函数相当关键,用于枚举出数据结构对应的值。

  三、应用举例

  fn main() {
let e1=E::Name(String::from("云南青山"));
println!("{}", getenumvalue(e1));
//输出 云南青山 
let e2=E::Age(41);
println!("{}", getenumvalue(e2));
//输出 41

let e3=E::Name(String::from("大队长"));
println!("{:?}", e3);
//输出 Name("大队长")

  }

  千万别掉以轻心啊,注意看let e3=E::Name(String::from("大队长")); e3变量,是一个E枚举类型中的Name,如果直接打印输出,将得到  Name("大队长")  这样的内容,如果你想获取"大队长"这个内容,相当困难,必须使用第二步的自定义函数才能获取(可参照e1和e2的获取方法),否则将不可能获得值导致无法使用。


该杂文来自: 最新技术

上一篇:rust在struct中使用泛型T作为字段的三种实例

下一篇:rust之thread.futures.block多线程示例

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计