Skip to content

Commit

Permalink
deploy: 53e2fa2
Browse files Browse the repository at this point in the history
  • Loading branch information
wusyong committed Jul 6, 2024
1 parent db6cc40 commit 5516089
Show file tree
Hide file tree
Showing 4 changed files with 4 additions and 4 deletions.
2 changes: 1 addition & 1 deletion ch19-01-unsafe-rust.html
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ <h3 id="不安全的超能力"><a class="header" href="#不安全的超能力">
<p>為了盡可能隔離不安全程式碼,最佳作法是將之封裝在安全的抽象並提供安全的 API,本章在後面的探討不安全函式和方法一併討論之。部分的標準函式庫同樣是在審核過的不安全程式碼上提供安全抽象。透過安全抽象封裝不安全程式碼,可防止你或你的使用者使用以 <code>unsafe</code> 實作的功能,不會將實際的 <code>unsafe</code> 使用洩漏到四散各地,因為安全抽象就是安全的 Rust。</p>
<p>接下來將依序探討這五個不安全的超能力。也會看看一些替不安全程式碼提供安全介面的抽象。</p>
<h3 id="對裸指標解參考"><a class="header" href="#對裸指標解參考">對裸指標解參考</a></h3>
<p>在第四章<a href="ch04-02-references-and-borrowing.html#%E8%BF%B7%E9%80%94%E5%8F%83%E8%80%83">「迷途參考」</a>一節,我們提及編譯器確保參考一定是合法的。不安全的 Rust 有兩種新型別叫<strong>裸指標</strong>,和參考非常相似。和參考一樣,裸指標能是不可變或可變,分別寫做 <code>*const T</code><code>*mut T</code>星號不是參考運算子,它就是型別名稱的一部分。在裸指標的脈絡下,<strong>不可變</strong>代表指標不能在被解參考之後直接賦值。</p>
<p>在第四章<a href="ch04-02-references-and-borrowing.html#%E8%BF%B7%E9%80%94%E5%8F%83%E8%80%83">「迷途參考」</a>一節,我們提及編譯器確保參考一定是合法的。不安全的 Rust 有兩種新型別叫<strong>裸指標</strong>,和參考非常相似。和參考一樣,裸指標能是不可變或可變,分別寫做 <code>*const T</code><code>*mut T</code>星號不是解參考運算子,它就是型別名稱的一部分。在裸指標的脈絡下,<strong>不可變</strong>代表指標不能在被解參考之後直接賦值。</p>
<p>和參考與智慧指標(smart pointer)不同,裸指標是:</p>
<ul>
<li>允許忽略借用規則,同時可存在指向相同位置的可變和不可變的指標,或是多個可變指標</li>
Expand Down
2 changes: 1 addition & 1 deletion print.html
Original file line number Diff line number Diff line change
Expand Up @@ -15338,7 +15338,7 @@ <h3 id="不安全的超能力"><a class="header" href="#不安全的超能力">
<p>為了盡可能隔離不安全程式碼,最佳作法是將之封裝在安全的抽象並提供安全的 API,本章在後面的探討不安全函式和方法一併討論之。部分的標準函式庫同樣是在審核過的不安全程式碼上提供安全抽象。透過安全抽象封裝不安全程式碼,可防止你或你的使用者使用以 <code>unsafe</code> 實作的功能,不會將實際的 <code>unsafe</code> 使用洩漏到四散各地,因為安全抽象就是安全的 Rust。</p>
<p>接下來將依序探討這五個不安全的超能力。也會看看一些替不安全程式碼提供安全介面的抽象。</p>
<h3 id="對裸指標解參考"><a class="header" href="#對裸指標解參考">對裸指標解參考</a></h3>
<p>在第四章<a href="ch04-02-references-and-borrowing.html#%E8%BF%B7%E9%80%94%E5%8F%83%E8%80%83">「迷途參考」</a>一節,我們提及編譯器確保參考一定是合法的。不安全的 Rust 有兩種新型別叫<strong>裸指標</strong>,和參考非常相似。和參考一樣,裸指標能是不可變或可變,分別寫做 <code>*const T</code> 和 <code>*mut T</code>。星號不是參考運算子,它就是型別名稱的一部分。在裸指標的脈絡下,<strong>不可變</strong>代表指標不能在被解參考之後直接賦值。</p>
<p>在第四章<a href="ch04-02-references-and-borrowing.html#%E8%BF%B7%E9%80%94%E5%8F%83%E8%80%83">「迷途參考」</a>一節,我們提及編譯器確保參考一定是合法的。不安全的 Rust 有兩種新型別叫<strong>裸指標</strong>,和參考非常相似。和參考一樣,裸指標能是不可變或可變,分別寫做 <code>*const T</code> 和 <code>*mut T</code>。星號不是解參考運算子,它就是型別名稱的一部分。在裸指標的脈絡下,<strong>不可變</strong>代表指標不能在被解參考之後直接賦值。</p>
<p>和參考與智慧指標(smart pointer)不同,裸指標是:</p>
<ul>
<li>允許忽略借用規則,同時可存在指向相同位置的可變和不可變的指標,或是多個可變指標</li>
Expand Down
2 changes: 1 addition & 1 deletion searchindex.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion searchindex.json

Large diffs are not rendered by default.

0 comments on commit 5516089

Please sign in to comment.