[易学易懂系列|rustlang语言|零基础|快速入门|(9)] 有意思的基础知识 Control Flows 我们今天再来看看流程控制。 条件控制 if-else if -else: / Simplest Example let team_size = 7; if team_size < 5 { println!("Small"); } else if team_size < 10 { println!("Medium"); } else { println!("Large"); } // p...
-
[易学易懂系列|rustlang语言|零基础|快速入门|(9)]
-
[易学易懂系列|rustlang语言|零基础|快速入门|(10)]
[易学易懂系列|rustlang语言|零基础|快速入门|(10)] 有意思的基础知识 Vectors 我们之前知道array数组是定长,只可保存相同类型的数据。 如果,我们想用不定长的数组呢?因为很多时候,数据有可能是或多或少,不确定个数的。 这时候,vector就出场了。 在Rust,vecotr是可变长度的数组,用于保存相同类型的数据。 vector是引用类型,其数据也是动态地在堆heap分配内存空间。 我们知道String类型,是引用类型。 其实,String底层,也就是用vector来保...
-
[易学易懂系列|rustlang语言|零基础|快速入门|(6)]
有意思的基础知识 我们现在回过头来看看,一些基础知识。 因为理解了前面的重要概念:所有权,借用,生命周期。 我们现在看基础知识就很简单了。 先看变量定义: let a = true;//rust不要求显式定义类型,编译器女王自动会根据上下文和用途,来自动定义类型,这里 //是:bool let b: bool = true;//如果显式定义类型,则通过:分号+类型 let (x, y) = (1, 2); let mut z = 5; z = 6; 在rust,这些变量定义叫变量绑定。 为什么这...
-
[易学易懂系列|rustlang语言|零基础|快速入门|(5)]
Lifetimes我们继续谈谈生命周期(lifttime),我们还是拿代码来说话:```fn main() { let mut a = vec![1, 2, 3]; let b = &mut a; // &mut borrow of a starts here // some code println!("{:?}", a); // trying to access a as a shared borrow, so giving an error} // &mut borrow of a end...
-
[易学易懂系列|rustlang语言|零基础|快速入门|(4)]
Borrowing继续讲讲另一个重要的概念:借用(borrowing),什么是借用?我们先来看前一文章([易学易懂系列|rustlang语言|零基础|快速入门|(3)])的代码 : let a = [1, 2, 3]; let b = a;println!("{:?} {:?}", a, b);// [1, 2, 3] [1, 2, 3] let a = vec![1, 2, 3]; let b = a;println!("{:?} {:?}", a, b);// Error; use of m...
-
[易学易懂系列|rustlang语言|零基础|快速入门|(3)]
今天我们来讲讲rust最难,也是最重要的概念:Ownership,Borrowing,Lifetimes首先我们来看看:ownership(所有权)我们来看看下面的代码: let a = [1, 2, 3]; let b = a;println!("{:?} {:?}", a, b);// [1, 2, 3] [1, 2, 3] let a = vec![1, 2, 3]; let b = a;println!("{:?} {:?}", a, b);// Error; use of moved ...
-
[易学易懂系列|rustlang语言|零基础|快速入门|(1)]
今天我们来开一个新系列。从零学习rustlang。简单介绍下rustlang:Rust 是一门系统级编程语言,被设计为保证内存和线程安全,防止段错误产生。作为系统级编程语言,它的基本理念是“零开销抽象”。理论上来说,它的速度与 C/C++ 同级。Rust 可以被归为通用的、多范式、编译型的编程语言,类似C/C++。与这两门编程语言不同的是,Rust 是线程安全的!Rust编程语言的目标是,创建一个安全和并发的软件系统。它强调安全性、并发和内存控制。尽管 Rust 借用了 C/C++的语法,却杜绝...
-
[易学易懂系列|rustlang语言|零基础|快速入门|(2)]
我们今天来配置下vscode+rust。vscode开发rust很方便。但配置有点坑,我们都认为vscode很简单,很完善。但这里很多同学也出现不少问题。我们在这里简单记录下win7下配置的过程,跟着我一步步来,应该就可打造你的屠龙宝刀。首先,我们安装插件:Rust Extension PackRust Test Explorer然后打开上一篇文章的工程:hello-rust,见:https://www.cnblogs.com/gyc567/p/11887935.html打开command pa...