以下のコードは`println!`で[[所有権]]のエラーになる。
```rust
fn main() {
let s = String::from("hoge");
let s2 = s;
println!("{}", s);
}
```
ところが以下の場合は[[所有権]]のエラーにならない。`_`が未使用を意味するから。
```rust
fn main() {
let s = String::from("hoge");
let _ = s;
println!("{}", s);
}
```
実際は[[パターンマッチ (Rust)|パターンマッチ]]で関係ない値を束縛しないようにするため使うことが多い。
また、変数名が**アンダースコアから始まる**場合は束縛されるので注意。つまり、以下のコードは[[所有権]]のエラーになる。
```rust
fn main() {
let s = String::from("hoge");
let _s = s;
println!("{}", s);
}
```