「Rust筆記」修訂間的差異

出自Tan Kian-ting的維基
跳至導覽 跳至搜尋
行 2: 行 2:


=Programming Rust筆記=
=Programming Rust筆記=
==Ch1概論==
*系統程式語言有「未定義行為」。
*系統程式語言有「未定義行為」。
*使用者輸入的內容可能會導致程式漏洞。
*使用者輸入的內容可能會導致程式漏洞。

於 2023年12月5日 (二) 00:48 的修訂

Programming Rust筆記

Ch1概論

  • 系統程式語言有「未定義行為」。
  • 使用者輸入的內容可能會導致程式漏洞。
    • 編譯時消除未定義行為
    • 安全,亦於使用
    • 平行編譯
    • 0 overhead的C++,只有必要花費,不會花費太多資源消耗
    • 善用底層
    • cargo、trait、generic

其他

型別

函數

struct

struct Aminal {
    species: String,
    name: String,
    weight: u64,
}


資料結構

函數

  1. 得到 UTF-8 字串長度的方法:UnicodeSegmentation::graphemes(參見:Stack Overflow
  2. 匯入外部函式庫

變數

  1. 使用參照的方法
    foo (x : &mut i64){...}
  2. 連結字串
    let concat_str = format!("{}{}", str1, str2);

字串

  1. 獲得子字串:a = a[..1].to_string();

Gtk4

  1. Grid於Rust的Gtk4 binding