当前位置: 首页 > 知识库问答 >
问题:

如何在Rust中打印变量的类型?

苏华藏
2023-03-14
let mut my_number = 32.90;

使用typetype_of不起作用。有没有别的办法我可以打印号码的类型?

共有1个答案

魏宸
2023-03-14

可以使用std::any::type_name函数。这不需要每晚编译器或外部板条箱,结果非常正确:

fn print_type_of<T>(_: &T) {
    println!("{}", std::any::type_name::<T>())
}

fn main() {
    let s = "Hello";
    let i = 42;

    print_type_of(&s); // &str
    print_type_of(&i); // i32
    print_type_of(&main); // playground::main
    print_type_of(&print_type_of::<i32>); // playground::print_type_of<i32>
    print_type_of(&{ || "Hi!" }); // playground::main::{{closure}}
}

请注意:正如文档中所述,此信息必须仅用于调试目的:

这是为了诊断用途。除了作为类型的尽力而为的描述之外,没有指定字符串的确切内容和格式。

 类似资料:
  • 我有以下几点: 如何打印的类型? 使用和不起作用。还有其他方法可以打印号码的类型吗?

  • 问题内容: 有没有一种方法可以快速打印变量的运行时类型?例如: 在上面的示例中,我正在寻找一种方法来表明变量“ soon”的类型为,或至少为。 问题答案: 2016年9月更新 Swift 3.0:使用,例如(因为关键字已删除) 2015年10月更新 : 我将下面的示例更新为新的Swift 2.0语法(例如,已被替换为,现在是)。 从Xcode 6.3发行说明 : @nschum在注释中指出Xcod

  • 问题内容: 假设我有一个名为choice它的变量等于2。我将如何访问该变量的名称?相当于 用于制作字典。有一个很好的方法可以做到这一点,而我只是想念它。 编辑: 因此,这样做的原因是。我正在运行一些数据分析的东西,我在运行时使用多个我想调整或不调整的参数来调用程序。我从格式为.config的文件中读取了上次运行中使用的参数 当提示你输入值时,将显示先前使用的值,并且空字符串输入将使用先前使用的值。

  • 我的代码: 我试图像java语法一样打印变量C++,只是作为一个实验。但输出:

  • 问题内容: 我正在尝试在Java的打印行中打印在webdriver test中使用的测试数据 我需要打印内的课堂上使用多个变量函数(/ /不管)。 我需要在打印语句中进行以下打印: 名字:( 我使用的变量值) 姓氏:( 我使用的变量值) 使用如下所示的方法可以得到准确的结果。 但是我需要减少行数并使用更有效的方法。 谢谢! 问题答案: 您可以使用1做到这一点:

  • 在Python中,变量根据其内容具有真实值。例如: 我还知道,我可以在根本不使用if运算符的情况下打印比较的真实值: 但是我如何打印变量的/值?目前,我正在这样做: 但这看起来有点不优雅。有没有首选的方式?