【发布时间】:2021-10-01 10:13:57
【问题描述】:
我试图在 Rust 宏中使用字母“E”而不触发数学指数。这是一个例子:
macro_rules! test {
(0e) => {
// Do something
};
}
fn main() {
test!(0e);
}
这给出了错误error: expected at least one digit in exponent。可以无视吗?我知道我可以用其他方式写这个,但由于一致性,我更喜欢这样写。
谢谢。
【问题讨论】:
-
没有。 “0e”在传递给宏之前被标记化,宏只看到“完成”的语言项目,如文字、表达式、块等。您需要更具体地了解您想要实现的目标,以便人们可以来找到替代品。
-
@user2722968 我并不是真的在寻找替代品,我只是想知道是否有办法跳过 Rust 编译器将其标记为数学指数。谢谢你的回答。
标签: rust rust-macros