1
0
mirror of https://github.com/google/comprehensive-rust.git synced 2026-06-13 13:12:00 +02:00
Files

33 lines
793 B
Markdown
Raw Permalink Normal View History

2023-11-29 10:39:24 -05:00
---
minutes: 5
---
# Variables
Rust provides type safety via static typing. Variable bindings are made with
`let`:
```rust,editable,warnunused
2023-11-29 10:39:24 -05:00
fn main() {
let x: i32 = 10;
println!("x: {x}");
// x = 20;
// println!("x: {x}");
}
```
<details>
- Uncomment the `x = 20` to demonstrate that variables are immutable by default.
2023-11-29 10:39:24 -05:00
Add the `mut` keyword to allow changes.
- Warnings are enabled for this slide, such as for unused variables or
unnecessary `mut`. These are omitted in most slides to avoid distracting
warnings. Try removing the mutation but leaving the `mut` keyword in place.
- The `i32` here is the type of the variable. This must be known at compile
2023-11-29 10:39:24 -05:00
time, but type inference (covered later) allows the programmer to omit it in
many cases.
</details>