Finished dev [unoptimized + debuginfo] target(s) in 0.05sRunning `F:\learn\rustlearn\learn60\target\debug\learn60.exe`
FloatNum(2.2725)
IntNum(20)
None------------------
(program exited with code: 0)请按任意键继续. . .
// `derive`属性会自动创建实现,借助`fmt::Debug`使得这个`struct`能够打印。
#[derive(Debug)]
enum Num{None,  IntNum(i32),FloatNum(f32),}fn read_num(num1:&Num,num2:f32)->Num{let mut result=Num::None;if num2!=0.0{match num1{&Num::FloatNum(val)=>result=Num::FloatNum(val/num2),&Num::IntNum(val)=>result=Num::IntNum(val /num2 as i32), &Num::None=>result=Num::None, }       }return     result;
}
fn main() {let x1=Num::FloatNum(18.18);let x2=Num::IntNum(61);println!("{:?}",read_num(&x1,8.0));println!("{:?}",read_num(&x2,3.0));println!("{:?}",read_num(&x2,0.0));
}

enum 类似于C++的union,但更强大,可以为每个成员指定附属的类型的信息。
将各种类型拼在一起,可组成新的类型

rust(68)-rust enum相关推荐

  1. rust 局域网联机_腐蚀rust搭建Rust服务器及联机教程

    今天 九游和大家讲解腐蚀rust搭建Rust服务器及 联机教程 腐蚀rust服务器搭建教程.这里为大家介绍如何搭建服务器,可以进行单机也可以和小伙伴联机,下面介绍详细的方法. Steam游戏后台服务器 ...

  2. Rust:Rust语言介绍

    Rust语言介绍 相关资源 Rust官网:https://www.rust-lang.org/ Rust编译器的源码:https://github.com/rust-lang/rust 语言设计和相关 ...

  3. 如何编写一个 Rust 程序——Rust语言基础02

    1. Hello World! 在所有编程语言的教程中让大家接触的第一段程序便是将 "Hello World!" 这段文字打印到屏幕上,这样的开端被绝大多数语言的教学接受,并往后编 ...

  4. rust(36)-Rust and WebAssembly(3)

    线性内存 WebAssembly有一个非常简单的内存模型.一个wasm模块可以访问单个"线性内存",它本质上是一个平面字节数组.该内存可以以页面大小(64K)的倍数增长.它不能被缩 ...

  5. rust(33)-Rust and WebAssembly(1)

    具有高级人机工程学的低级控制 JavaScript Web应用程序很难获得和保持可靠的性能.JavaScript的动态类型系统和垃圾收集暂停不起作用.如果您不小心偏离了JIT的正确方向,那么看似很小的 ...

  6. 【一起学Rust】Rust的Hello Rust详细解析

    跟随本篇文章,你将学会编写Rust的Hello World,并且对Rust编程有个初步的了解. 文章目录 前言 一.创建项目目录 二.编写Hello World 三.运行程序 编译 运行 四.分析He ...

  7. 【一起学Rust】Rust学习前准备——注释和格式化输出

    提示:准备热身. 文章目录 前言 一.注释 1. 普通注释 2. 文档注释 二.格式化输出 输出字符串 输出带有占位符的字符串 输出带有指定格式占位符的字符串 指定宽度对齐 数字输出缺位补0 总结 注 ...

  8. [Rust笔记]Rust生成随机数的方法

    1.前言 在项目当中,生成随机数.随机密码等经常会使用到.这里总结下Rust随机数生成的方法.Rust我们要用到包模块 rand.具体实现如下: 2.添加模块依赖 [dependencies] ran ...

  9. 【一起学Rust】Rust包管理工具Cargo初步了解

    提示:建议学习完上一节内容再学习本章内容哦,详情请订阅本专栏. 文章目录 前言 一.使用 Cargo 创建项目 1. 新建项目 2. 指定版本管理系统 3. Cargo.toml配置文件 二.构建并运 ...

最新文章

  1. gitlab报错 fatal: index-pack failed error: RPC failed; result=18, HTTP code = 200解决方案
  2. 虚拟机无法访问主机mysql_虚拟机linux端mysql数据库无法远程访问的解决办法
  3. mysql查看锁表与解锁
  4. 《树莓派渗透测试实战》——2.12 用例子总结以上步骤
  5. 如何使用智能铃声避免在Android中令人尴尬的大声铃声
  6. 从HDFS的写入和读取中,我发现了点东西
  7. 【转载】堆和栈的内存分配
  8. JDBC基础篇(MYSQL)——自定义JDBCUtil工具类
  9. U盘中的SanDiskSecureAccess可以删除么?删除后影响U盘的使用么?
  10. HP EliteDesk 880 G2 TWR无法从U盘启用
  11. 阿里巴巴的业务范畴/文化和价值观
  12. 固态硬盘的坏块管理,你知道和不知道的
  13. VB中MID如何使用
  14. 用Python制作一条五彩蟒蛇
  15. 云服务器配置代理服务
  16. 【成电860考研】经验贴汇总(公共课+专业课+复试)-扒遍所有网站:信软群、王道、知乎、csdn等,截止21年7月整理出的所有帖子-共15篇
  17. FITC-GSL I荧光素标记的西非单叶豆凝集素 I
  18. 制作移动硬盘或U盘的MAC安装盘
  19. 【机器学习】多项式回归案例五:正则惩罚解决过拟合(Ridge回归和Lasso回归)
  20. 紫书 统计字符1的个数

热门文章

  1. eclipse创建Maven的动态web工程
  2. zend studio 函数不提醒 小黄图标 小黄标
  3. 6.二元查找树的后序遍历结果[PostOrderOfBST]
  4. [1025]Noip 2009 Problem 2
  5. notepad++默认的快捷键整理
  6. C–gcc命令行下的参数
  7. 【产品分析】Microsoft MyPhone试用手记
  8. 用户控件中使用相对路径问题
  9. IDEA修改Servlet的代码生成模板
  10. sqli-lab(16)