Advanced Features

时间:2021-02-17 14:12:34   收藏:0   阅读:0

Unsafe Rust

So far, you can see that Rust has a strict memory safety guarantee at compile time. However, sometimes this safety guarantee can be annoying (or to say for the most of the time).

Therefore, Rust has a second language hidden inside that doesn‘t enforce these memory safety guarantees: it‘s called unsafe Rust and works just like regular Rust, but gives us extra superpowers.

When the compiler tries to tell whether or not the code upholds the memory safety rules, it‘s better to reject some valid programs than accept some invalid programs. This results to that sometimes your code may be OK for you, but won‘t compile. In these cases, you can use the unsafe block to tell the compiler that you can guarantee that your code is acceptable.

Another reason Rust has an unsafe alter ego is that the underlying computer hardware is inherently unsafe. If Rust didn‘t let you do unsafe operations, you couldn‘t do certain tasks.

Unsafe Superpowers

You can take five operations in unsafe Rust, called unsafe superpowers, that you can‘t in safe Rust.

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!