trait

Trait(特征)derive(起源)编译器可以使用#[derive]属性提供一些trait的基本实现。声明属性后的trait实现,依然可以自己重新方法。 The following is a list of derivable traits: Comparison traits: Eq, PartialEq, Ord, PartialOrd. Clone, to create T f...

Continue Reading →

iterator

iteratoriterator trait主要是为了for循环使用而设计。for循环默认使用into_iter() into_iter, iter and iter_mut iter: borrow each element into_iter: cousumes the collection iter_mut: mutably borrows each element of the co...

Continue Reading →

closure闭包

闭包closure捕获变量闭包捕获变量采用了非常灵活的推导,可以根据需要,捕获外部变量的三种形式&T(borrow default)/&mut T(mut borrow)/T(move) 12345678910111213141516171819fn main() { let greeting = "hello"; let mut f...

Continue Reading →

macro宏

宏和函数的区别 宏可以接收可变的参数 宏定义必须在调用前 声明宏典型的例子是vec!,声明宏是基于match来完成,语法也非常相似 程序宏必须单独的package中声明。参数是代码,所以更加灵活,功能更加强大;通常要配合syn和quote两个crate来解析代码和生成代码。 rust没有反射功能,可以通过程序宏定义来实现功能。 AOP可以通过声明宏实现

Continue Reading →

lifetime生命周期

lifetime生命周期一个变量的声明周期从它被声明时开始,直到它被销毁结束。声明周期是编译器用来保证所有borrow可用的一个构造。 functionrust使用显示声明,来确定一个引用的声明周期。fn foo<’a, ‘b>,表示foo函数的声明周期,不能超过’a,’b中的任何一个。 如果不考虑省略形式,函数的声明至少要满足几个约束 任何的引用,必须声明一个生命周期。 ...

Continue Reading →

auto_test

11 编写自动测试rust中的测试,分为单元测试和集成测试; rust nightly add Benchmark test document comment as test 11.1 如何编写测试一个测试函数通常包含三个部分 准备数据 执行要测试的函数 断言返回内容是否和期待的一致 解剖测试函数简单来说,一个测试函数,就是一个带有test属性的函数。当我们执行cargo test的...

Continue Reading →

前端设计综述

1. 架构模式的变迁架构模式 mvc mvp wpf mvvm 1.2 工具和框架 jquery/dojo angular react vue 2. 设计语言针对企业应用,狭义定义来说,设计语言就是针对企业应用的一套UI设计处理规则;通过统一的处理规则,来达到应用在编写、展现、交互等方面的风格统一。 2.1 material designGoogle Android material ...

Continue Reading →

Modules

7 Package(包), Crates(箱) and Modules(模块)7.1 package and create当我们使用cargo new my-project命令创建一个工程的时候,我们创建了一个package。package包含一个cargo.toml文件 crate是rust编译的入口。 A crate is a binary or librarypackage至少要包含一...

Continue Reading →

enum

6 EnumEnums allow you to define a type by enumerating its possible variants. 6.1 define and use12345enum IpAddrKind { V4, V6,}let four = IpAddrKind::V4; rust中的enum可以接收不通类型的参数 1234enum Ip...

Continue Reading →

© 2023 PLAYAROUND All Rights Reserved. 本站访客数人次 本站总访问量
Theme by hiero