这不是派生时实现的行为
Debug
enum
如您所见:
#[derive(Debug)]
enum MyEnum {
AB(i32),
}
fn main() {
let value = MyEnum::AB(42);
println!("[{:<3?}]", value);
}
[AB(42 )]
调试
你自己:
enum MyEnum {
AB,
}
use std::fmt;
impl fmt::Debug for MyEnum {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
match self {
MyEnum::AB => f.pad("AB"),
}
}
}
fn main() {
let value = MyEnum::AB;
println!("[{:<3?}]", value);
}
输出:
[AB ]