以下是一些在 Rust 中定义相关常量的示例:
1. 在结构体中定义常量:
struct Circle {
radius: f64,
}
impl Circle {
const PI: f64 = 3.14159;
fn area(&self) -> f64 {
self.radius * self.radius * Self::PI
}
}
在上面的例子中,Circle 结构体中定义了一个与类型相关的常量 PI,表示圆周率。
2. 在模块中定义常量:
mod math {
pub const E: f64 = 2.71828;
}
fn main() {
println!("The value of E: {}", math::E);
}
在这个例子中,模块 math 中定义了一个与模块相关的常量 E,表示自然对数的底数。
3. 在枚举中定义常量:
enum Status {
OK,
ERROR,
}
impl Status {
const DEFAULT: Status = Status::OK;
}
在这个例子中,Status 枚举中定义了一个与枚举相关的常量 DEFAULT。
4. 全局常量:
你也可以在任何作用域之外定义全局常量,但要注意这样做可能不符合 Rust 的所有权和可变性原则。
const GLOBAL_CONSTANT: i32 = 42;
fn main() {
println!("Global constant: {}", GLOBAL_CONSTANT);
}
在上面的例子中,GLOBAL_CONSTANT 是一个全局常量。
这些是一些定义相关常量的例子。常量的命名通常采用大写字母和下划线的风格(e.g., MY_CONSTANT)。值得注意的是,常量的类型必须显式指定。在 Rust 中,常量是编译时不可变的,且必须具有确定的值。
转载请注明出处:http://www.zyzy.cn/article/detail/6828/Rust