在C++中,你可以使用类似于__clang_version__的东西. rust 病也有类似的症状吗?我在网上搜索,但什么也没找到.

推荐答案

不是直接的.

有一个rustc_version crate ,它告诉你rustc的版本可以在命令行上访问;这是为在构建脚本中使用而设计的.还有rustc_version_runtime做了类似的事情,但将信息作为运行时调用公开(i.e.它在编译时检测编译器版本,但在运行时公开).

标准免责声明:写任何依赖于编译器版本的东西都要小心.理想情况下,您应该只测试使用semver支持的功能的最低版本(上面两个库都直接支持).

Rust相关问答推荐

为什么是!为Rust中的RwLockReadGuard和RwLockWriteGuard实现的发送特征?

什么样的 struct 可以避免使用RefCell?

如何仅使用http机箱发送http请求?

如何在Rust中表示仅具有特定大小的数组

如何删除Mac Tauri上的停靠图标?

有没有一种惯用的方法来判断VEC中是否存在变体?

如何在函数中返回自定义字符串引用?

Rust编译器似乎被结果类型与anyhow混淆

你能在Rust中弃用一个属性吗?

处理带有panic 的 Err 时,匹配臂具有不兼容的类型

为什么需要静态生命周期以及在处理 Rust 迭代器时如何缩小它?

Button.set_hexpand(false) 不会阻止按钮展开

Rust中的位移操作对范围有什么影响?

如何使用泛型满足 tokio 异步任务中的生命周期界限

打印 `format_args!` 时borrow 时临时值丢失

RAII 模式的 Rust 解决方案,用于在 new() 和 drop() 上修改另一个对象

如何断言代码不会在测试中编译?

如果我立即等待,为什么 `tokio::spawn` 需要一个 `'static` 生命周期?

如何制作具有关联类型的特征的类型擦除版本?

在 Rust 中组合特征的不同方法是否等效?