我正在尝试制作一个类似于此的函数
pub const fn insert(num1:i32, num2:i32) -> &'static str {
formatcp!("n1:{}, n2:{}" , num1, num2)
}
但是num1/num2并非常量。 我认为这可以通过宏实现,但我对宏不太熟悉。
我正在尝试制作一个类似于此的函数
pub const fn insert(num1:i32, num2:i32) -> &'static str {
formatcp!("n1:{}, n2:{}" , num1, num2)
}
但是num1/num2并非常量。 我认为这可以通过宏实现,但我对宏不太熟悉。
这有帮助吗?
macro_rules! insert {
($n1:expr, $n2:expr) => {
concat!("n1: ", $n1, " , n2: ", $n2)
};
}
const TEST_1: &str = insert!(1, 2);
const TEST_2: &str = insert!(2, 3);
fn main() {
println!("{}", TEST_1);
println!("{}", TEST_2);
}
const_format
?这并没有太大的区别,并且使用了相同的思路。 - Chayim Friedman