成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

開(kāi)始用Rust編寫(xiě)代碼!

譯文
開(kāi)發(fā) 前端
Rust適合構(gòu)建各種程序,包括Web應(yīng)用程序、命令行工具和網(wǎng)絡(luò)服務(wù)。Rust包含您期望從現(xiàn)代編程語(yǔ)言獲得的許多特性,比如并發(fā)性和類型推斷等。

作者 | Ukeje

譯者 | 布加迪

審校 | 重樓

Rust是一種強(qiáng)大的語(yǔ)言,但從哪里開(kāi)始入手呢?如果您習(xí)慣使用另一種語(yǔ)言,就應(yīng)該知道Rust如何處理這些熟悉的概念。

1、梳理Rust

自2015年發(fā)布以來(lái),Rust已成為開(kāi)發(fā)人員最喜歡的編程語(yǔ)言之一。Rust提供了出色的性能和安全特性,具有直觀簡(jiǎn)潔的語(yǔ)法,因而成為理想的編程語(yǔ)言。

Rust適合構(gòu)建各種程序,包括Web應(yīng)用程序、命令行工具和網(wǎng)絡(luò)服務(wù)。Rust包含您期望從現(xiàn)代編程語(yǔ)言獲得的許多特性,比如并發(fā)性和類型推斷等。

Rust是一種跨平臺(tái)編程語(yǔ)言,可以在大多數(shù)操作系統(tǒng)上運(yùn)行。若要開(kāi)始使用Rust,請(qǐng)?jiān)L問(wèn)官方Rust網(wǎng)站(https://www.rust-lang.org/tools/install),并為你的操作系統(tǒng)安裝首選版本。

一旦安裝了Rust,你就可以開(kāi)始在擴(kuò)展名為.rs的Rust文件中編寫(xiě)程序。Rust用途廣泛,易于上手。如果您之前有過(guò)編程經(jīng)驗(yàn),會(huì)發(fā)現(xiàn)它很簡(jiǎn)單。

2、Rust中的變量和常量

Rust有很強(qiáng)的表達(dá)力,并且有多種聲明變量的方法。您可以使用let關(guān)鍵字來(lái)聲明變量。

下面是在Rust中聲明變量的方法:

let a: String;
let b: i32;
let c: () = ();

變量a和b分別是字符串和整數(shù)。變量c是一個(gè)Rust單元類型,充當(dāng)函數(shù)和表達(dá)式的占位符。

在可選的數(shù)據(jù)類型聲明之后,您可以使用等號(hào)符號(hào)聲明和初始化變量。

fn main(){
         let age: String = String::from("five years old");
         let age = 5; // equivalent to let age: i32 = 5;
         println!("{}", age);
}

程序在使用println!宏打印輸出之前聲明兩個(gè)age變量。第一個(gè)age變量指定數(shù)據(jù)類型,第二個(gè)變量不指定。

在聲明變量時(shí)不必指定其數(shù)據(jù)類型。Rust編譯器在編譯時(shí)根據(jù)值的數(shù)據(jù)類型推斷類型。

圖片

在Rust中,您還可以用const關(guān)鍵字聲明常量,就像聲明變量一樣:

const age: &str = "five years old";

您無(wú)法修改聲明為常量的變量的值。

3、注釋Rust程序

Rust提供了單行和塊注釋的功能。針對(duì)單行注釋,您可以使用雙正斜杠(//):

fn main() {
         // This is a line comment
         let x = 5; // This comment explains the purpose of the `x` variable
}

針對(duì)多行注釋(塊注釋),使用正斜杠后跟星號(hào)(/*),并用星號(hào)后跟正斜杠(*/)結(jié)束塊:

fn main() {
         /*
           This is a block comment that spans multiple lines.
           It is often used to describe a larger block of code.
         */
         let x = 5;
}

這樣,注釋就可以簡(jiǎn)潔明了。

4、Rust中的數(shù)組

數(shù)組是數(shù)據(jù)類型相同的元素的固定大小的集合。默認(rèn)情況下,Rust在堆棧上分配數(shù)組。

下面是在Rust中聲明數(shù)組的方法:

fn main() {
         let numbers = [1, 2, 3, 4, 5];
}

numbers數(shù)組含有5個(gè)項(xiàng)。您可以使用索引訪問(wèn)數(shù)組中某個(gè)位置的值:

fn main() {
         let numbers = [1, 2, 3, 4, 5];
         let x = numbers[3];
         println!("{}", x)
}

main函數(shù)輸出訪問(wèn)數(shù)組第四個(gè)元素的變量x。

圖片

5、Rust中的向量

Rust提供向量來(lái)掩蓋數(shù)組的限制。向量是動(dòng)態(tài)大小的,它們可以根據(jù)需要來(lái)擴(kuò)大和縮小。

下面是在Rust中聲明向量的方法:

fn main() {
         let my_vec: Vec<i32> = vec![1, 2, 3, 4, 5];
         let x = my_vec[3];
         println!("{}", x)
}

my_vec向量是一個(gè)32位整數(shù)向量。變量x訪問(wèn)向量的第四個(gè)元素,main函數(shù)將值輸出到控制臺(tái)。

6、Rust的條件語(yǔ)句

條件語(yǔ)句是Rust用于程序決策的控制結(jié)構(gòu)之一。您可以使用if和else關(guān)鍵字來(lái)處理程序中的決策。

下面這個(gè)if語(yǔ)句根據(jù)兩個(gè)整數(shù)的相等性向控制臺(tái)輸出一個(gè)字符串。

fn main() {
         let a: i32 = 12;
         if a == 12 {
             println!("a equals twelve");
         }
}

由于變量等于12,main函數(shù)使用println!宏打印輸出字符串。可以使用else關(guān)鍵字來(lái)處理if語(yǔ)言評(píng)估為false的情況:

fn main() {
         let a: i32 = 12;
         if a == 123 {
         println!("a equals twelve");
         } else {
         println!("a does not equal twelve");
         }
}

在這個(gè)例子中,else語(yǔ)句之所以運(yùn)行,是由于a的值不等于123。

針對(duì)復(fù)雜的情形,您可以使用match關(guān)鍵字來(lái)聲明匹配語(yǔ)句:

fn main() {
         let age: i32 = 7;
         match age {
             1 => println!("one"),
             2 => println!("two"),
             3 => println!("three"),
             _ => println!("zero"),
         }
}

main函數(shù)將age變量與match語(yǔ)句中的case進(jìn)行匹配,并執(zhí)行與該值匹配的表達(dá)式。下劃線(_)是在值匹配時(shí)運(yùn)行的默認(rèn)語(yǔ)句。

7、Rust中的循環(huán)

Rust為重復(fù)的任務(wù)提供循環(huán)。Rust有三種主要類型的循環(huán):loop循環(huán)、while循環(huán)和for循環(huán)。

loop關(guān)鍵字創(chuàng)建一個(gè)無(wú)限循環(huán),該循環(huán)一直運(yùn)行,直至遇到break關(guān)鍵字:

fn main() {
         loop {
         println!("printed repeatedly until break statement is encountered.");
         break;
         }
}

當(dāng)您想要重復(fù)一段代碼時(shí),只要條件的評(píng)估結(jié)果為true,while循環(huán)就很方便:

fn main() {
         let mut count = 0;
         while count < 5 {
               println!("The count is {}", count);
               count += 1;
         }
}

for循環(huán)適用于迭代一組項(xiàng),比如數(shù)組:

fn main() {
         let numbers = [1, 2, 3, 4, 5];
         for item in numbers.iter() {
             println!("The current item is {}", item);        
             }
}

for循環(huán)遍歷number數(shù)組,并將每一項(xiàng)打印輸出到控制臺(tái)。

8、聲明和調(diào)用Rust函數(shù)

使用fn關(guān)鍵字聲明一個(gè)Rust函數(shù),后跟函數(shù)名、參數(shù)列表和返回類型(如果有的話)。

下面是如何聲明一個(gè)帶參數(shù)和返回類型的函數(shù):

fn add(a: i32, b: i32) -> i32 {
    return a + b;
}

add函數(shù)接受兩個(gè)32位整數(shù),并返回一個(gè)32位整數(shù),即兩個(gè)參數(shù)的和。要從您代碼的其他地方調(diào)用函數(shù),只需指定名稱和參數(shù)(如果有的話):

fn main() {
         let result = add(2, 3);
         println!("2 + 3 = {}", result);
}

result變量保存調(diào)用add函數(shù)的結(jié)果。main函數(shù)使用println!宏將結(jié)果打印輸出到控制臺(tái)。

9、Rust中的結(jié)構(gòu)體

Rust提供了用于定義將相關(guān)值分組的自定義數(shù)據(jù)類型的結(jié)構(gòu)體。結(jié)構(gòu)體是創(chuàng)建具有特定屬性的對(duì)象的藍(lán)圖。

下面顯示了如何聲明一個(gè)結(jié)構(gòu)體:

struct Person {
       name: String,
       age: u32,
       is_male: bool,
}

Person結(jié)構(gòu)體有三個(gè)字段:字符串、無(wú)符號(hào)32位整數(shù)和布爾值。在定義了一個(gè)結(jié)構(gòu)體之后,您可以在程序的其他部分創(chuàng)建其實(shí)例:

fn main() {
         let person1 = Person {
             name: String::from("Candace Flynn"),
             age: 16,
             is_male: false,
         };
}

person1變量是Person結(jié)構(gòu)體的一個(gè)實(shí)例。在實(shí)例化時(shí),您可以為結(jié)構(gòu)體字段賦值。您可以隨心所欲地創(chuàng)建一個(gè)結(jié)構(gòu)體的多個(gè)實(shí)例。

10、如何在Rust中實(shí)現(xiàn)OOP?

Rust很靈活,您可以在Rust中使用結(jié)構(gòu)體等內(nèi)置數(shù)據(jù)結(jié)構(gòu)來(lái)實(shí)現(xiàn)OOP概念。

可以使用結(jié)構(gòu)體來(lái)替代類。借助Rust的結(jié)構(gòu)體,可以為類型定義藍(lán)圖,并使用Rust在結(jié)構(gòu)體方面提供的功能實(shí)現(xiàn)不同的OOP概念。

原文鏈接:https://www.makeuseof.com/rust-everything-know-start/

責(zé)任編輯:武曉燕 來(lái)源: 51CTO技術(shù)棧
相關(guān)推薦

2021-06-03 07:45:25

Rust Git 終端 UI

2024-09-26 15:40:06

2021-05-12 09:20:11

Window-rsRustwindows

2024-06-12 08:00:07

2021-07-19 15:12:21

Python編程語(yǔ)言

2023-05-12 14:52:30

2023-06-23 14:15:09

Rust編程

2022-02-07 16:40:12

RustGNU Coreut命令

2024-06-10 23:07:05

2024-03-20 12:44:35

AI訓(xùn)練

2022-06-25 21:22:30

編程Rust代碼

2021-04-07 14:00:14

AndroidRust編程語(yǔ)言

2024-05-10 07:56:40

Rust編寫(xiě)處理單元

2024-01-08 13:31:00

Rust自動(dòng)化測(cè)試

2021-10-26 21:30:11

GitUIRustGit

2024-03-13 15:48:43

2025-06-10 02:33:00

RustPython庫(kù)代碼

2020-09-30 08:32:40

Python

2020-03-13 14:20:02

代碼開(kāi)發(fā) Rust

2024-06-04 10:49:05

Rust插件開(kāi)發(fā)工具
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 亚洲综合精品 | 一级片在线免费看 | 一级片免费网站 | 色资源在线 | 亚洲成av| 日韩电影免费在线观看中文字幕 | 日韩欧美一区二区三区免费看 | 免费在线看黄 | 六月色婷| 国产一区二区三区四区 | 国产不卡一 | 久久精品久久久 | 午夜视频在线免费观看 | 国产伦精品一区二区三区精品视频 | 久久久久久综合 | 欧美日韩成人在线观看 | 日韩在线一区二区 | 亚洲国产精品99久久久久久久久 | 午夜视频免费在线观看 | 91精品国产91久久久久久 | 国产1区2区 | 国产99久久久国产精品下药 | 天天干天天干 | 成人亚洲| 特级特黄特色的免费大片 | 亚洲视频在线看 | 精品亚洲一区二区三区 | 91看片视频 | 粉嫩粉嫩芽的虎白女18在线视频 | 国产精品久久久久久福利一牛影视 | 国产美女视频黄a视频免费 国产精品福利视频 | 成人毛片在线观看 | 国产毛片毛片 | 欧美一区二区三区在线观看 | 欧美在线视频一区二区 | 久久亚洲一区二区 | 日韩精品免费一区二区在线观看 | 欧美精品一区二区三区四区 | 精品国产乱码久久久久久影片 | 国产成人精品999在线观看 | 久亚州在线播放 |