🐥
rustで変数の型情報を文字列として出力する方法
pub fn type_of<T>(_: &T) -> &'static str {
std::any::type_name::<T>()
}
fn main() {
println!("Hello, world!");
let v: Vec<&str> = "abc1defXghiXabc".splitn(2, |c| c == '1' || c == 'X').collect();
print!("v={:?}\n", v);
print!("typeof(v)={:?},", type_of(&v));
}
上記のtype_of関数を定義してそれを実行すれば型情報を取得できる。
上記の処理の出力は以下のようになる
Hello, world!
v=["abc", "defXghiXabc"]
typeof(v)="alloc::vec::Vec<&str>",
Discussion