Rust 程式設計中的結構
Rust 中的結構是使用者定義的資料型別。它們包含用於定義其具體例項的欄位。
我們在 struct 關鍵字的幫助下定義struct,後跟我們希望為 struct 起的名字。struct 的名稱應該描述我們正在其中分組的資料塊的重要性。
語法
struct Employee {
id: i32,
name: String,
leaves: i8,
}上面的語法包含 struct 的名稱,在大括號中,我們有不同的欄位,即型別為i32的id、name和leaves。
建立例項
為了建立 Employee 結構的例項,我們執行類似這樣的操作
fn main() {
let emp1 = Employee {
id : 10602,
name : String::from("Mukul"),
leaves : 9
};
println!("{:?}",emp1);
}輸出
Employee { id: 10602, name: "Mukul", leaves: 9 }上面的結構例項不可變;我們可以透過新增mut關鍵字使其可變。
示例
#![allow(unused)]
#[derive(Debug)]
struct Employee {
id: i32,
name: String,
leaves: i8,
}
fn main() {
let mut emp1 = Employee {
id : 10602,
name : String::from("Mukul"),
leaves : 9
};
println!("{:?}",emp1);
emp1.id = 10603;
println!("{:?}",emp1);
}輸出
Employee { id: 10602, name: "Mukul", leaves: 9 }
Employee { id: 10603, name: "Mukul", leaves: 9 }單位結構
我們還可以在 Rust 中擁有不包含任何欄位的結構。它們很少有用,但可以與其他功能結合使用。
示例
#![allow(unused)]
#[derive(Debug)]
struct Person;
fn main() {
let p = Person;
println!("{:?}",p);
}輸出
Person
元組結構
第三種類型的結構稱為元組結構;它們包含一個或多個用逗號分隔的值。
示例
#![allow(unused)]
#[derive(Debug)]
struct Color(u8, u8, u8);
fn main() {
let white = Color(1, 1, 1);
let Color(r, g, b) = white;
println!("White = rgb({}, {}, {})", r, g, b);
}輸出
White = rgb(1, 1, 1)
廣告
資料結構
網路
關係型資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP