03-变量先声明
变量先声明 — Rust By Example
译文 · 基于 Rust By Example
原文链接: https://doc.rust-lang.org/stable/rust-by-example/variable_bindings/declare.html
变量先声明
可以先声明(declare)变量绑定,后面才将它们初始化(initialize)。但是这种做法很少用,因为这样可能导致使用未初始化的变量。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| fn main() {
// 声明一个变量绑定
let a_binding;
{
let x = 2;
// 初始化一个绑定
a_binding = x * x;
}
println!("a binding: {}", a_binding); // a binding: 4
let another_binding;
// 报错!使用了未初始化的绑定
println!("another binding: {}", another_binding);
// 改正 ^ 注释掉此行
another_binding = 1;
println!("another binding: {}", another_binding); // another binding: 1
}
|
编译器禁止使用未经初始化的变量,因为这会产生未定义行为(undefined behavior)。