第52章へようこそ。
今日のテーマは「unsafe」です。
第51章の最後で、コンパイラの検査には外側があると見ました。
Pinが移動を止める仕組みは、型が可変参照を返さないところまではコンパイラの検査の中にある。
だが、Pinを作る操作と中身を取り出す操作には、が動かないという前提があり、その前提が本当に成り立つかをコンパイラは検査しない。
検査されないその一点は、操作を書いた人間が引き受けた。
この「検査の外を人間が引き受ける」という形は、Pinだけのものではない。
Rustには、検査の外に出て、その正しさを人間が引き受けることを示す、1つのキーワードがある。
それがunsafeです。
今日扱うのは、unsafeが実際に何をするのか、何を解禁するのか、そしてなぜそれが「安全を捨てる」ではなく「保証する主体が移る」ことなのか、です。
感想
まだ感想はありません。最初の1件を書きましょう!
スクロール