Rust:
デバッグ出力を表示する
How to: (やり方)
fn main() {
let my_var = vec![1, 2, 3];
println!("Debug output: {:?}", my_var); // 標準的なデバッグ出力
}
出力結果:
Debug output: [1, 2, 3]
上級者向け:
fn main() {
let my_struct = MyStruct { x: 10, y: 20 };
println!("Debug output: {:#?}", my_struct); // より読みやすい形式
}
#[derive(Debug)]
struct MyStruct {
x: i32,
y: i32,
}
出力結果:
Debug output: MyStruct {
x: 10,
y: 20,
}
Deep Dive (踏み込んだ内容)
デバッグ出力は古くから開発者の間で使われてる。昔はprint
文だけだったけど、Rustではprintln!
マクロを使う。これにより、フォーマットされた出力が可能。
代わりにlog
クレートを使う手もある。これは、異なるログレベルでの出力管理を可能にする。
デバッグ出力では{:?}
や{:#?}
プレースホルダーが使われる。対象の型にDebug
トレイトが実装されてないといけない。自分で作った構造体には、#[derive(Debug)]
アトリビュートを追加する必要があるんだ。