别名 Type Alias
使用 type
可用于定义一个类型别名, 类似于 C 中的 typedef
或者 C++ 中的 using TypeA = TypeB;
.
使用 use
可将某模块中的内容或某枚举类型中的元素导入到当前作用域, 跟 C++ 中的 using
有些类似.
using GlyphId = int32_t;
同样的类型在 Rust 中可以这样写:
#![allow(unused)] fn main() { pub type GlyphId = i32; }
还可以使用不流行的写法:
#![allow(unused)] fn main() { pub use i32 as GlyphId; }
在导入外部的类型时, 可以使用 use Foo as Bar
的语法给它加上别名:
use color::Color as ArgbColor; fn main() { let text_color = ArgbColor::new(255, 39, 88, 0x0a); println!("color: {text_color:?}"); } pub mod color { #[derive(Debug, Default, Clone, Copy, Eq, PartialEq, Hash)] pub struct Color { pub alpha: u8, pub red: u8, pub green: u8, pub blue: u8, } impl Color { #[must_use] #[inline] pub const fn new(alpha: u8, red: u8, green: u8, blue: u8) -> Self { Self { alpha, red, green, blue, } } } }