舉報

會員
Rust編程從入門到實戰
樊少冰 孟祥蓮編著 著
更新時間:2023-08-10 16:20:39
開會員,本書免費讀 >
最新章節:
27.3 簡易的HTTP服務器
《Rust編程從入門到實戰》是一部Rust編程語言的編程手冊,第1~3章為Rust前置知識,介紹了開發環境搭建、第一個Rust程序以及語言的輸入輸出;第4~16章為Rust基礎語法知識,介紹了Rust基礎的語法和必要的語言使用規則,其中包括Rust所有權、生命周期以及特性等重要語言概念的介紹;第17~27章為Rust實用操作,介紹了文件與I/O、無畏并發、Web編程等重要的經典開發實戰以及屬性、宏、“不安全”語法等Rust高級編程。《Rust編程從入門到實戰》適合Rust語言初學者學習使用,也可供Rust開發者參考使用,還可作為高等院校相關專業的教材。
- 27.3 簡易的HTTP服務器 更新時間:2023-08-10 16:20:39
- 27.2 UDP簡介
- 27.1.2 搭建TCP服務器
- 27.1.1 建立TCP連接
- 27.1 TCP簡介
- 第27章 Web服務器程序
- 26.6 共用體
- 26.5 “不安全”特性
- 26.4 訪問靜態變量
- 26.3 “不安全”的函數和方法
- 26.2 原始指針
- 26.1 “不安全”域
- 第26章 “不安全”語法
- 25.3.3 屬性宏
- 25.3.2 派生過程宏
- 25.3.1 類函數過程宏
- 25.3 過程宏
- 25.2 宏的定義
- 25.1 宏的使用
- 第25章 宏
- 24.6 其他屬性
- 24.5 模塊路徑屬性
- 24.4.3 must_use屬性
- 24.4.2 deprecated屬性
- 24.4.1 lint檢查屬性
- 24.4 診斷屬性
- 24.3 derive派生屬性
- 24.2.3 “cfg_attr”屬性
- 24.2.2 test條件編譯
- 24.2.1 cfg屬性
- 24.2 條件編譯屬性
- 24.1 屬性的使用
- 第24章 屬性
- 23.5.2 使用“標志互斥鎖”
- 23.5.1 用一個互斥鎖保護
- 23.5 應對互斥鎖死鎖
- 23.4 Arc線程安全引用計數
- 23.3 線程通信
- 23.2 多線程
- 23.1.4 線程通信
- 23.1.3 死鎖
- 23.1.2 數據回收
- 23.1.1 數據共用
- 23.1 并發和問題
- 第23章 無畏并發
- 22.4.3 Fn、FnMut和FnOnce特性
- 22.4.2 Drop特性
- 22.4.1 Deref和DerefMut特性
- 22.4 特殊的運算符
- 22.3 支持實現運算符方法的運算符
- 22.2.2 引用類型運算符方法實現
- 22.2.1 實現復數加法
- 22.2 實現運算符方法
- 22.1 Rust運算符方法
- 第22章 運算符方法
- 21.3 Mutex——互斥鎖
- 21.2 Rc——引用計數
- 21.1 Box引用
- 第21章 高級引用
- 20.5 Box的所有權
- 20.4 dyn關鍵字
- 20.3 Box解引用特性
- 20.2 Box類型
- 20.1 內存的分配方式
- 第20章 堆內存區
- 19.5 多態
- 19.4 繼承
- 19.3 封裝
- 19.2 對象
- 19.1 類
- 第19章 面向對象編程思想的實現
- 18.5.2 從向量創建堆
- 18.5.1 二叉堆
- 18.5 堆
- 18.4.2 B樹集
- 18.4.1 散列集
- 18.4 集
- 18.3.2 B樹映射表
- 18.3.1 散列映射表
- 18.3 映射表
- 18.2.4 UTF-8編碼
- 18.2.3 字符串截取
- 18.2.2 拼接字符串
- 18.2.1 將數據轉換為字符串
- 18.2 字符串
- 18.1.3 鏈表
- 18.1.2 雙端向量
- 18.1.1 向量
- 18.1 線性數據結構
- 第18章 數據結構與集合
- 17.7.3 刪除文件或目錄
- 17.7.2 創建目錄
- 17.7.1 列出目錄
- 17.7 文件系統
- 17.6 寫入和讀取二進制信息
- 17.5.2 以讀寫模式打開文件
- 17.5.1 OpenOptions對象
- 17.5 自定義模式打開文件
- 17.4 追加模式
- 17.3.2 覆蓋文件
- 17.3.1 創建新文件
- 17.3 創建新文件模式
- 17.2.2 只讀模式
- 17.2.1 打開文件的種類
- 17.2 打開文件
- 17.1.2 流
- 17.1.1 文件
- 17.1 關于文件的概念
- 第17章 文件與I/O
- 16.6 有條件的實現方法
- 16.5 特性作返回值
- 16.4.3 特性疊加
- 16.4.2 泛型特性參數
- 16.4.1 常規特性參數
- 16.4 特性作參數
- 16.3 默認特性
- 16.2 實現特性
- 16.1 定義特性
- 第16章 特性
- 15.6.3 Cargo導入外部包
- 15.6.2 Cargo功能
- 15.6.1 Cargo是什么
- 15.6 Cargo
- 15.5.2 運行多源文件程序
- 15.5.1 新建源文件
- 15.5 多源文件工程
- 15.4 引用標準庫
- 15.3 use關鍵字
- 15.2.3 枚舉類訪問權
- 15.2.2 結構體訪問權
- 15.2.1 模塊訪問權
- 15.2 訪問權
- 15.1.3 模塊
- 15.1.2 包
- 15.1.1 箱
- 15.1 工程組織概念
- 第15章 工程組織和訪問權
- 14.4.2 Option枚舉類
- 14.4.1 Null的概念
- 14.4 “空引用”
- 14.3.3 Error類型和它的kind方法
- 14.3.2 可恢復錯誤的傳遞
- 14.3.1 Result枚舉類
- 14.3 可恢復錯誤
- 14.2 不可恢復錯誤
- 14.1 錯誤與錯誤處理
- 第14章 錯誤處理與空值
- 13.3.3 泛型方法
- 13.3.2 對具體類實現方法
- 13.3.1 對泛型類實現方法
- 13.3 impl泛型
- 13.2.2 泛型枚舉類
- 13.2.1 泛型結構體
- 13.2 復合類型的泛型
- 13.1 泛型函數
- 第13章 泛型
- 12.2.4 枚舉類的方法
- 12.2.3 if-let語法
- 12.2.2 枚舉類的match語法
- 12.2.1 枚舉類的定義
- 12.2 枚舉類
- 12.1.6 單元結構體
- 12.1.5 元組結構體
- 12.1.4 結構體方法
- 12.1.3 結構體所有權
- 12.1.2 結構體的實例化
- 12.1.1 結構體的定義
- 12.1 結構體
- 第12章 復合類型
- 11.2 數組切片
- 11.1 字符串切片
- 第11章 切片類型
- 10.4.3 解引用運算符
- 10.4.2 可變引用
- 10.4.1 引用的用途
- 10.4 引用類型
- 10.3.2 返回值所有權
- 10.3.1 參數所有權
- 10.3 與函數相關的所有權
- 10.2.6 垂懸引用
- 10.2.5 引用和借用
- 10.2.4 復制
- 10.2.3 轉移
- 10.2.2 生命周期
- 10.2.1 變量范圍
- 10.2 所有權機制
- 10.1.2 主流的內存管理機制
- 10.1.1 內存的概念
- 10.1 內存管理
- 第10章 所有權
- 9.3 loop循環
- 9.2 for循環
- 9.1 while循環
- 第9章 循環結構
- 8.3 match語句——Rust中的switch
- 8.2 三元運算符
- 8.1 if-else語句
- 第8章 條件語句
- 7.4 閉包(Lambda表達式)
- 7.3 函數對象
- 7.2.3 函數表達式
- 7.2.2 函數返回值
- 7.2.1 函數語句與表達式
- 7.2 函數語句與函數表達式
- 7.1 函數的聲明
- 第7章 函數
- 6.3 生成工程文檔
- 6.2 說明文檔注釋
- 6.1 常規注釋
- 第6章 注釋
- 5.9 數組
- 5.8 元組
- 5.7 字符串
- 5.6 字符型
- 5.5 邏輯運算
- 5.4 布爾型
- 5.3.2 數學函數
- 5.3.1 基礎運算
- 5.3 數學運算
- 5.2 浮點數型
- 5.1 整數型
- 第5章 Rust數據類型
- 4.4 靜態變量
- 4.3 常量
- 4.2 重影
- 4.1 變量
- 第4章 基礎語法
- 3.4 從命令參數中獲取
- 3.3 從命令行輸入
- 3.2 詳細輸出
- 3.1 輸出到命令行
- 第3章 開發命令行程序
- 2.3.2 配置CLion
- 2.3.1 下載和安裝CLion
- 2.3 CLion安裝與部署
- 2.2 集成開發環境
- 2.1.4 卸載
- 2.1.3 在其他操作系統上安裝
- 2.1.2 在GNU/Linux上安裝
- 2.1.1 Windows系統上的安裝
- 2.1 工具鏈
- 第2章 開發環境
- 1.3 Hello Rust!
- 1.2.2 在哪里能使用Rust
- 1.2.1 為什么選擇Rust
- 1.2 Rust語言
- 1.1 編程語言
- 第1章 Rust編程語言概述
- 前言 PREFACE
- 內容簡介
- 作者簡介
- 版權信息
- 封面
- 封面
- 版權信息
- 作者簡介
- 內容簡介
- 前言 PREFACE
- 第1章 Rust編程語言概述
- 1.1 編程語言
- 1.2 Rust語言
- 1.2.1 為什么選擇Rust
- 1.2.2 在哪里能使用Rust
- 1.3 Hello Rust!
- 第2章 開發環境
- 2.1 工具鏈
- 2.1.1 Windows系統上的安裝
- 2.1.2 在GNU/Linux上安裝
- 2.1.3 在其他操作系統上安裝
- 2.1.4 卸載
- 2.2 集成開發環境
- 2.3 CLion安裝與部署
- 2.3.1 下載和安裝CLion
- 2.3.2 配置CLion
- 第3章 開發命令行程序
- 3.1 輸出到命令行
- 3.2 詳細輸出
- 3.3 從命令行輸入
- 3.4 從命令參數中獲取
- 第4章 基礎語法
- 4.1 變量
- 4.2 重影
- 4.3 常量
- 4.4 靜態變量
- 第5章 Rust數據類型
- 5.1 整數型
- 5.2 浮點數型
- 5.3 數學運算
- 5.3.1 基礎運算
- 5.3.2 數學函數
- 5.4 布爾型
- 5.5 邏輯運算
- 5.6 字符型
- 5.7 字符串
- 5.8 元組
- 5.9 數組
- 第6章 注釋
- 6.1 常規注釋
- 6.2 說明文檔注釋
- 6.3 生成工程文檔
- 第7章 函數
- 7.1 函數的聲明
- 7.2 函數語句與函數表達式
- 7.2.1 函數語句與表達式
- 7.2.2 函數返回值
- 7.2.3 函數表達式
- 7.3 函數對象
- 7.4 閉包(Lambda表達式)
- 第8章 條件語句
- 8.1 if-else語句
- 8.2 三元運算符
- 8.3 match語句——Rust中的switch
- 第9章 循環結構
- 9.1 while循環
- 9.2 for循環
- 9.3 loop循環
- 第10章 所有權
- 10.1 內存管理
- 10.1.1 內存的概念
- 10.1.2 主流的內存管理機制
- 10.2 所有權機制
- 10.2.1 變量范圍
- 10.2.2 生命周期
- 10.2.3 轉移
- 10.2.4 復制
- 10.2.5 引用和借用
- 10.2.6 垂懸引用
- 10.3 與函數相關的所有權
- 10.3.1 參數所有權
- 10.3.2 返回值所有權
- 10.4 引用類型
- 10.4.1 引用的用途
- 10.4.2 可變引用
- 10.4.3 解引用運算符
- 第11章 切片類型
- 11.1 字符串切片
- 11.2 數組切片
- 第12章 復合類型
- 12.1 結構體
- 12.1.1 結構體的定義
- 12.1.2 結構體的實例化
- 12.1.3 結構體所有權
- 12.1.4 結構體方法
- 12.1.5 元組結構體
- 12.1.6 單元結構體
- 12.2 枚舉類
- 12.2.1 枚舉類的定義
- 12.2.2 枚舉類的match語法
- 12.2.3 if-let語法
- 12.2.4 枚舉類的方法
- 第13章 泛型
- 13.1 泛型函數
- 13.2 復合類型的泛型
- 13.2.1 泛型結構體
- 13.2.2 泛型枚舉類
- 13.3 impl泛型
- 13.3.1 對泛型類實現方法
- 13.3.2 對具體類實現方法
- 13.3.3 泛型方法
- 第14章 錯誤處理與空值
- 14.1 錯誤與錯誤處理
- 14.2 不可恢復錯誤
- 14.3 可恢復錯誤
- 14.3.1 Result枚舉類
- 14.3.2 可恢復錯誤的傳遞
- 14.3.3 Error類型和它的kind方法
- 14.4 “空引用”
- 14.4.1 Null的概念
- 14.4.2 Option枚舉類
- 第15章 工程組織和訪問權
- 15.1 工程組織概念
- 15.1.1 箱
- 15.1.2 包
- 15.1.3 模塊
- 15.2 訪問權
- 15.2.1 模塊訪問權
- 15.2.2 結構體訪問權
- 15.2.3 枚舉類訪問權
- 15.3 use關鍵字
- 15.4 引用標準庫
- 15.5 多源文件工程
- 15.5.1 新建源文件
- 15.5.2 運行多源文件程序
- 15.6 Cargo
- 15.6.1 Cargo是什么
- 15.6.2 Cargo功能
- 15.6.3 Cargo導入外部包
- 第16章 特性
- 16.1 定義特性
- 16.2 實現特性
- 16.3 默認特性
- 16.4 特性作參數
- 16.4.1 常規特性參數
- 16.4.2 泛型特性參數
- 16.4.3 特性疊加
- 16.5 特性作返回值
- 16.6 有條件的實現方法
- 第17章 文件與I/O
- 17.1 關于文件的概念
- 17.1.1 文件
- 17.1.2 流
- 17.2 打開文件
- 17.2.1 打開文件的種類
- 17.2.2 只讀模式
- 17.3 創建新文件模式
- 17.3.1 創建新文件
- 17.3.2 覆蓋文件
- 17.4 追加模式
- 17.5 自定義模式打開文件
- 17.5.1 OpenOptions對象
- 17.5.2 以讀寫模式打開文件
- 17.6 寫入和讀取二進制信息
- 17.7 文件系統
- 17.7.1 列出目錄
- 17.7.2 創建目錄
- 17.7.3 刪除文件或目錄
- 第18章 數據結構與集合
- 18.1 線性數據結構
- 18.1.1 向量
- 18.1.2 雙端向量
- 18.1.3 鏈表
- 18.2 字符串
- 18.2.1 將數據轉換為字符串
- 18.2.2 拼接字符串
- 18.2.3 字符串截取
- 18.2.4 UTF-8編碼
- 18.3 映射表
- 18.3.1 散列映射表
- 18.3.2 B樹映射表
- 18.4 集
- 18.4.1 散列集
- 18.4.2 B樹集
- 18.5 堆
- 18.5.1 二叉堆
- 18.5.2 從向量創建堆
- 第19章 面向對象編程思想的實現
- 19.1 類
- 19.2 對象
- 19.3 封裝
- 19.4 繼承
- 19.5 多態
- 第20章 堆內存區
- 20.1 內存的分配方式
- 20.2 Box類型
- 20.3 Box解引用特性
- 20.4 dyn關鍵字
- 20.5 Box的所有權
- 第21章 高級引用
- 21.1 Box引用
- 21.2 Rc——引用計數
- 21.3 Mutex——互斥鎖
- 第22章 運算符方法
- 22.1 Rust運算符方法
- 22.2 實現運算符方法
- 22.2.1 實現復數加法
- 22.2.2 引用類型運算符方法實現
- 22.3 支持實現運算符方法的運算符
- 22.4 特殊的運算符
- 22.4.1 Deref和DerefMut特性
- 22.4.2 Drop特性
- 22.4.3 Fn、FnMut和FnOnce特性
- 第23章 無畏并發
- 23.1 并發和問題
- 23.1.1 數據共用
- 23.1.2 數據回收
- 23.1.3 死鎖
- 23.1.4 線程通信
- 23.2 多線程
- 23.3 線程通信
- 23.4 Arc線程安全引用計數
- 23.5 應對互斥鎖死鎖
- 23.5.1 用一個互斥鎖保護
- 23.5.2 使用“標志互斥鎖”
- 第24章 屬性
- 24.1 屬性的使用
- 24.2 條件編譯屬性
- 24.2.1 cfg屬性
- 24.2.2 test條件編譯
- 24.2.3 “cfg_attr”屬性
- 24.3 derive派生屬性
- 24.4 診斷屬性
- 24.4.1 lint檢查屬性
- 24.4.2 deprecated屬性
- 24.4.3 must_use屬性
- 24.5 模塊路徑屬性
- 24.6 其他屬性
- 第25章 宏
- 25.1 宏的使用
- 25.2 宏的定義
- 25.3 過程宏
- 25.3.1 類函數過程宏
- 25.3.2 派生過程宏
- 25.3.3 屬性宏
- 第26章 “不安全”語法
- 26.1 “不安全”域
- 26.2 原始指針
- 26.3 “不安全”的函數和方法
- 26.4 訪問靜態變量
- 26.5 “不安全”特性
- 26.6 共用體
- 第27章 Web服務器程序
- 27.1 TCP簡介
- 27.1.1 建立TCP連接
- 27.1.2 搭建TCP服務器
- 27.2 UDP簡介
- 27.3 簡易的HTTP服務器 更新時間:2023-08-10 16:20:39