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

韩国 电商网站如何快速收录网站

韩国 电商网站,如何快速收录网站,wordpress用哪个版本,泰安网络推广公司平台系列文章目录 【跟小嘉学 Rust 编程】一、Rust 编程基础 【跟小嘉学 Rust 编程】二、Rust 包管理工具使用 【跟小嘉学 Rust 编程】三、Rust 的基本程序概念 【跟小嘉学 Rust 编程】四、理解 Rust 的所有权概念 【跟小嘉学 Rust 编程】五、使用结构体关联结构化数据 【跟小嘉学…系列文章目录 【跟小嘉学 Rust 编程】一、Rust 编程基础 【跟小嘉学 Rust 编程】二、Rust 包管理工具使用 【跟小嘉学 Rust 编程】三、Rust 的基本程序概念 【跟小嘉学 Rust 编程】四、理解 Rust 的所有权概念 【跟小嘉学 Rust 编程】五、使用结构体关联结构化数据 【跟小嘉学 Rust 编程】六、枚举和模式匹配 【跟小嘉学 Rust 编程】七、使用包(Packages)、单元包(Crates)和模块(Module)来管理项目 【跟小嘉学 Rust 编程】八、常见的集合 【跟小嘉学 Rust 编程】九、错误处理(Error Handling) 【跟小嘉学 Rust 编程】十一、编写自动化测试 【跟小嘉学 Rust 编程】十二、构建一个命令行程序 【跟小嘉学 Rust 编程】十三、函数式语言特性迭代器和闭包 【跟小嘉学 Rust 编程】十四、关于 Cargo 和 Crates.io 【跟小嘉学 Rust 编程】十五、智能指针(Smart Point) 【跟小嘉学 Rust 编程】十六、无畏并发(Fearless Concurrency) 【跟小嘉学 Rust 编程】十七、面向对象语言特性 【跟小嘉学 Rust 编程】十八、模式匹配(Patterns and Matching) 文章目录 系列文章目录[TOC](文章目录) 前言一、 使用到模式的地方1.1、match 分支1.2、if let 条件表达式1.3、while let 条件循环1.4、for 循环1.5、let 语句1.6、函数参数 二、可辩驳性(Refutability)2.1、模式的两种形式 三、模式匹配语法(Pattern Syntax)3.1、模式匹配字面值Matching Literals3.2、匹配命名变量3.3、多种模式3.4、匹配范围3.5、解构分解值3.5.1、解构结构3.5.2、灵活匹配3.5.3、解构枚举3.5.3、嵌套枚举和结构3.5.4、解构结构和元组 3.6、模式中忽略值3.6.1、忽略某个值3.6.2、忽略值的某一部分3.6.3、忽略未使用变量警告3.6.4、使用.. 忽略值的剩余部分3.6.5、match 守卫3.6.6、 绑定 总结 前言 模式是Rust的一种特殊语法用于匹配复杂的和简单类型的结构模式与匹配表达式和其他构造结合使用可以更好的控制流。 模式由下列元素或组合组成 字面值解构的数组、enum、struct、tuple变量通配符占位符 想要使用模式需要将其与某个值进行比较如果模式匹配就可以在代码中使用这个值的想应部分。 主要教材参考 《The Rust Programming Language》 一、 使用到模式的地方 1.1、match 分支 match VALUE {PATTERN EXPRESSION,PATTERN EXPRESSION,PATTERN EXPRESSION, } 要求分支能够详尽所有可能性 特殊的模式: _匹配任何值不会绑定到变量通常用于match的最后一个分支用于忽略某些值。 1.2、if let 条件表达式 if let 表达式主要是作为简短的方式来替代只有一个匹配项的matchif let 可选的可以拥有 elseelse if 和 else if let但是 if let 不会检查穷尽性。 fn main() {let favorite_color: Optionstr None;let is_tuesday false;let age: Resultu8, _ 34.parse();if let Some(color) favorite_color {println!(Using your favorite color, {color}, as the background);} else if is_tuesday {println!(Tuesday is green day!);} else if let Ok(age) age {if age 30 {println!(Using purple as the background color);} else {println!(Using orange as the background color);}} else {println!(Using blue as the background color);} }1.3、while let 条件循环 只要模式继续匹配就允许循环执行。 let mut stack Vec::new();stack.push(1);stack.push(2);stack.push(3);while let Some(top) stack.pop() {println!({}, top);} 1.4、for 循环 let v vec![a, b, c];for (index, value) in v.iter().enumerate() {println!({} is at index {}, value, index);} 1.5、let 语句 let PATTERN EXPRESSION; let (x, y, z) (1, 2, 3); 1.6、函数参数 fn foo(x: i32) {// code goes here }fn print_coordinates((x, y): (i32, i32)) {println!(Current location: ({}, {}), x, y); }fn main() {let point (3, 5);print_coordinates(point); }二、可辩驳性(Refutability) 可辩驳性模式是否会无法匹配。 2.1、模式的两种形式 模式有两种形式可辩驳的无可辩驳的能够匹配任何可能传递的值的模式无可辩驳的对于某些可能的值无法进行匹配的模式可辩驳的函数参数、let 语句、for 循环只接受无可辩驳的模式if let 和while let 接受可辩驳的和无可辩驳的模式 三、模式匹配语法(Pattern Syntax) 3.1、模式匹配字面值Matching Literals let x 1;match x {1 println!(one),2 println!(two),3 println!(three),_ println!(anything),} 3.2、匹配命名变量 let x Some(5);let y 10;match x {Some(50) println!(Got 50),Some(y) println!(Matched, y {y}),_ println!(Default case, x {:?}, x),}println!(at the end: x {:?}, y {y}, x); 3.3、多种模式 let x 1;match x {1 | 2 println!(one or two),3 println!(three),_ println!(anything),} 3.4、匹配范围 示例匹配数值范围 let x 5;match x {1..5 println!(one through five),_ println!(something else),} 示例匹配字符串范围 let x c;match x {a..j println!(early ASCII letter),k..z println!(late ASCII letter),_ println!(something else),} 3.5、解构分解值 3.5.1、解构结构 示例 struct Point {x: i32,y: i32, }fn main() {let p Point { x: 0, y: 7 };let Point { x: a, y: b } p;assert_eq!(0, a);assert_eq!(7, b);let Point { x, y } p;assert_eq!(0, x);assert_eq!(7, y); }3.5.2、灵活匹配 fn main() {let p Point { x: 0, y: 7 };match p {Point { x, y: 0 } println!(On the x axis at {x}),Point { x: 0, y } println!(On the y axis at {y}),Point { x, y } {println!(On neither axis: ({x}, {y}));}} }3.5.3、解构枚举 enum Message {Quit,Move { x: i32, y: i32 },Write(String),ChangeColor(i32, i32, i32), }fn main() {let msg Message::ChangeColor(0, 160, 255);match msg {Message::Quit {println!(The Quit variant has no data to destructure.);}Message::Move { x, y } {println!(Move in the x direction {x} and in the y direction {y});}Message::Write(text) {println!(Text message: {text});}Message::ChangeColor(r, g, b) {println!(Change the color to red {r}, green {g}, and blue {b},)}} }3.5.3、嵌套枚举和结构 enum Color {Rgb(i32, i32, i32),Hsv(i32, i32, i32), }enum Message {Quit,Move { x: i32, y: i32 },Write(String),ChangeColor(Color), }fn main() {let msg Message::ChangeColor(Color::Hsv(0, 160, 255));match msg {Message::ChangeColor(Color::Rgb(r, g, b)) {println!(Change color to red {r}, green {g}, and blue {b});}Message::ChangeColor(Color::Hsv(h, s, v)) {println!(Change color to hue {h}, saturation {s}, value {v})}_ (),} }3.5.4、解构结构和元组 let ((feet, inches), Point { x, y }) ((3, 10), Point { x: 3, y: -10 }); 3.6、模式中忽略值 3.6.1、忽略某个值 fn foo(_: i32, y: i32) {println!(This code only uses the y parameter: {}, y); }fn main() {foo(3, 4); }3.6.2、忽略值的某一部分 范例1: let mut setting_value Some(5);let new_setting_value Some(10);match (setting_value, new_setting_value) {(Some(_), Some(_)) {println!(Cant overwrite an existing customized value);}_ {setting_value new_setting_value;}}println!(setting is {:?}, setting_value); 范例2: let numbers (2, 4, 8, 16, 32);match numbers {(first, _, third, _, fifth) {println!(Some numbers: {first}, {third}, {fifth})}} 3.6.3、忽略未使用变量警告 fn main() {let _x 5;let y 10;let s Some(String::from(Hello!));if let Some(_) s {println!(found a string);}println!({:?}, s); } 3.6.4、使用… 忽略值的剩余部分 struct Point {x: i32,y: i32,z: i32,}let origin Point { x: 0, y: 0, z: 0 };match origin {Point { x, .. } println!(x is {}, x),}let numbers (2, 4, 8, 16, 32);match numbers {(first, .., last) {println!(Some numbers: {first}, {last});}} 3.6.5、match 守卫 match 守卫是 match 分支模式后额外的 if 条件想要匹配该条件也必须满足 let num Some(4);match num {Some(x) if x % 2 0 println!(The number {} is even, x),Some(x) println!(The number {} is odd, x),None (),} 3.6.6、 绑定 enum Message {Hello { id: i32 },}let msg Message::Hello { id: 5 };match msg {Message::Hello {id: id_variable 3..7,} println!(Found an id in range: {}, id_variable),Message::Hello { id: 10..12 } {println!(Found an id in another range)}Message::Hello { id } println!(Found some other id: {}, id),} 总结 以上就是今天要讲的内容
http://www.yutouwan.com/news/218603/

相关文章:

  • 浅谈电子商务网站建设网站建设在什么税控盘
  • 凡客诚品官方网站的代码wordpress防止并发数
  • 邢台网站制作深圳电商网站建设公司
  • 苏州网站建设代理江苏城乡建设职业学院就业网站
  • 中国城乡与建设部网站苏州网站关键词优化
  • wordpress 导航网站模板品牌推广案例
  • 个人网站建设作用自己建设房源网站
  • 网站业务怎么做的h5网站是什么意思
  • 导航网站教程wordpress 文章标签
  • 用wordpress建站要不要用宝塔服装业网站建设的策划
  • 建设购物网站需要多少费用公司做的网站费用如何做账
  • 网站首页模板设计图济宁网络
  • 厦门人才网官方网站请解释网站开发的主要流程
  • 新建网站站点的微信公众号链接网站开发
  • 河津网站制作网站商城微信支付接口
  • 网站建设需求文件国内做的好的电商网站有哪些
  • 哪个网站有学做吃的什么是设计方案
  • 深圳网站建设 贴吧家用电脑网站建设
  • 建设银行官方网站地址微信投放广告多少钱
  • 和平东路网站建设建设工程+质量+协会网站
  • h5建站工具网页制作教程视频简单
  • 2017网站建设报价单免费做网站推荐
  • 徐州网站建设培训千图网素材下载网站
  • 天天爱天天做视频网站做网站 什么主题较好
  • 建设网站火车票预订做网站 商标分类
  • 网站开发关于安全问题app制作手机版
  • 网站的在线支付模块怎么做电商网站建设代理商
  • 浙江网站建设电话wordpress admin-ajax.php远程sql注入漏洞
  • 封面制作网站建立自己的网站软件有
  • 网站建设是不是可以免费建站做外贸应该去什么网站