Comprehensive Rust(繁体中文)
. . . . . . . . . . . . . . . . . . 159 VIII 第 4 天:下午 162 28 Welcome Back 163 29 錯誤處理 164 29.1 恐慌 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 29.2 疊代器 . . 「不會出現未定義的執行階段行為 (undefined runtime behavior)」- Rust 陳述式的行為一律會 有定義 – 陣列存取行為會經過邊界檢查。 – 整數溢位的行為是明確的 (恐慌或迴繞)。 • 「現代化的語言特徵」- 具表現力且符合人因工程學的高階語言 – 列舉和模式配對。 – 泛型。 – 沒有 FFI 負擔。 – 零成本的抽象化機制。 – 更好的編譯錯誤描述。 – 內建依附元件管理工具。 中, 「有號」整數的溢位現象實際上並未定義,而且在不同的平台或編 譯器上可能有不同行為。但在 Rust 中,整數溢位會經過定義。 將 i32 變更為 i16,即可查看整數溢位現象,這在偵錯版本中會造成恐慌 (checked),並納入發 布子版本中。此外,Rust 還提供溢位、飽和與進位等其他選項,可透過方法語法存取,例如 (a * b).saturating_add(b * c).saturating_add(c0 码力 | 358 页 | 1.41 MB | 10 月前3
共 1 条
- 1