如何基于多个启用的特性条件性启用Rust测试函数?
正确的特性组合检查写法
你需要用Rust提供的all()宏来组合多个feature条件,实现“同时启用两个特性”的判断。正确的代码如下:
#[test] #[cfg(all(feature = "dsp-cfft32", feature = "dsp-rfft1024"))] fn test_filter() { // 仅当两个特性同时启用时,这段测试代码才会被编译执行 ... }
说明
all(...)是Rust cfg系统中的逻辑与操作符,只有当括号内的所有条件都满足时,被标注的代码才会被编译。- 除了
all(),还有any()(逻辑或)和not()(逻辑非)可以用来组合更复杂的条件。
内容的提问来源于stack exchange,提问作者user422005
相关产品推荐
相关产品推荐

