当前位置: 首页 > news >正文

做网店的网站两个路由器做双网站

做网店的网站,两个路由器做双网站,免费软件app,wordpress 新浪微博登入Rust学习笔记_04——引用 Rust学习笔记_05——控制流(1) Rust学习笔记_06——控制流(2) 文章目录 1. 枚举1.1基础1.2 给枚举变体起个“别名”1.3 枚举与匹配(match) 2. 范围2.1 介绍2.2 半开区间范围2.3 包含范围的语法糖2.4 步长范围(Range …

Rust学习笔记_04——引用
Rust学习笔记_05——控制流(1)
Rust学习笔记_06——控制流(2)


文章目录

    • 1. 枚举
      • 1.1基础
      • 1.2 给枚举变体起个“别名”
      • 1.3 枚举与匹配(match)
    • 2. 范围
      • 2.1 介绍
      • 2.2 半开区间范围
      • 2.3 包含范围的语法糖
      • 2.4 步长范围(Range with Step)
      • 2.5 Range 类型

1. 枚举

Rust语言中的枚举(enum)是一种强大的数据类型,允许你定义一个变量,这个变量可以是几种不同类型的值之一。枚举在很多编程语言中都存在,但Rust的枚举格外灵活,因为它不仅可以包含简单的值,还可以包含元组或结构体作为其变体(variant)。这使得枚举成为Rust中表达多种可能状态或类型的强大工具。

1.1基础

枚举语法格式

enum IpAddrKind {V4(u8, u8, u8, u8),V6(String),
}

IpAddrKind枚举有两个变体:V4V6V4变体存储四个u8值(代表IPv4地址的四个八位字节),而V6变体存储一个String(代表IPv6地址)。

使用中可以通过指定变体的相应的值来创建枚举实例:

let home = IpAddrKind::V4(127, 0, 0, 1);
let loopback = IpAddrKind::V6(String::from("::1"));

1.2 给枚举变体起个“别名”

可以使用type关键字来给某个变体指定一个更方便的类型别名

enum Message {Quit,Move { x: i32, y: i32 },Write(String),ChangeColor(i32, i32, i32),
}type Point = Message::Move;let msg = Message::Move { x: 10, y: 20 };
let point: Point = msg; // 这里将Message::Move类型转换为Point类型

1.3 枚举与匹配(match)

枚举常与match表达式一起使用,以便根据枚举值的不同执行不同的代码块:

fn print_ip(ip: IpAddrKind) {match ip {IpAddrKind::V4(a, b, c, d) => {println!("IPv4 address: {}.{}.{}.{}", a, b, c, d);}IpAddrKind::V6(s) => {println!("IPv6 address: {}", s);}}
}

2. 范围

2.1 介绍

Rust语言中的范围(Range)是一种用于生成数字序列或进行迭代操作的表达式。Rust提供了两种主要类型的范围:半开区间范围(half-open range)和步长范围(range with step)。这些范围在for循环和其他上下文中都非常有用。

2.2 半开区间范围

半开区间范围是最常见的范围类型,它表示从起始值到但不包括结束值的一系列数值。在Rust中,半开区间范围使用..语法表示。

let start = 1;
let end = 5;
for number in start..end {println!("{}", number);
}

输出结果

1
2
3
4

2.3 包含范围的语法糖

虽然标准的半开区间范围不包括结束值,但Rust提供了..=语法糖来包含结束值,这称为包含范围(inclusive range)。

let start = 1;
let end = 5;
for number in start..=end {println!("{}", number);
}

输出结果

1
2
3
4
5

2.4 步长范围(Range with Step)

除了标准的范围,Rust还允许你指定一个步长(step)来跳过某些值

for number in (1..=10).step_by(2) {println!("{}", number);
}

输出结果

1
3
5
7
9

2.5 Range 类型

Rust标准库提供了几个类型来表示范围:

  • std::ops::Range<T>: 用于表示半开区间范围,例如 1..5
  • std::ops::RangeInclusive<T>: 用于表示包含范围,例如 1..=5
  • std::ops::RangeFrom<T>: 用于表示从某个值到无穷大的范围,例如 1..
  • std::ops::RangeTo<T>: 用于表示从负无穷大到某个值的范围,例如 ..5
  • std::ops::RangeFull: 用于表示整个类型的值范围,例如 .. 在整数类型上。
http://www.yayakq.cn/news/607269/

相关文章:

  • 网站建设的公司都有哪些企业网站设计开题报告
  • 网站建设公司网站源码网站集约化建设的建议
  • 网站建设估价个人免费网站平台哪个好
  • 大连网站建设比较好的公司建行移动门户官网
  • 网站怎么做交易公众号里链接的网站怎么做的
  • dedecms 网站首页标签react可以做门户网站么
  • 网站建设公司熊掌号怎么做漫画网站
  • 网站开发流程及顺序is_category wordpress
  • 福建有没有网站做鞋子一件代发网站排名查询alexa
  • 网站建站方案书国内使用wordpress
  • 视频直播点播网站建设胶州网站搭建公司
  • 面包屑导航的网站制作网页需要学什么语言
  • 上海有哪些网站设计公司芜湖龙湖建设工程有限公司网站
  • 大连模板做网站家庭带宽100m做网站
  • 上海专业的网站建设公司排名咨询网站公司建设计划书
  • 东莞网站建设推广公司公司流程建设的意义
  • 展览会网站建设做网站需要的素材资料
  • 化妆品网站建设预算明细表王野天图片
  • mvc 做网站网站备案 接入商名称
  • 公司创建一个网站需要多少钱电商app制作平台
  • 常见的网站开发工具网站内部服务器错误
  • 网站换空间上怎么办啊做相似网站
  • 网页制作与网站建设宝典 第2版南软科技网站开发
  • 手机网站课程wordpress需要的系统
  • 秦皇岛网站开发价格wordpress将用户锁在前台
  • 山东省住房与建设厅网站首页互联网商业计划书模板范文
  • 免费网站为何收录比较慢网站建设的分析
  • 移动版网站模板怎样做企业推广
  • 3d打印 东莞网站建设手机网站安装
  • 网站模板但没有后台如何做网站保定模板建站定制网站