Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rust 当指针类型不同时,如何生成编译错误?_Rust - Fatal编程技术网

Rust 当指针类型不同时,如何生成编译错误?

Rust 当指针类型不同时,如何生成编译错误?,rust,Rust,我们可能希望确保两种类型是兼容的,尤其是在编写宏时。 例如,检查两个参数的类型是否相同 如何最好地确保类型兼容 确保类型匹配的一个简单方法是在一个从不执行的块内将它们分配给一个伪值 macro_rules! check_type_pair { ($a:expr, $b:expr) => { if false { let _type_check = if false {$a} else {$b}; } } } 然后,

我们可能希望确保两种类型是兼容的,尤其是在编写宏时。 例如,检查两个参数的类型是否相同

如何最好地确保类型兼容



确保类型匹配的一个简单方法是在一个从不执行的块内将它们分配给一个伪值

macro_rules! check_type_pair {
    ($a:expr, $b:expr) => {
        if false {
            let _type_check = if false {$a} else {$b};
        }
    }
}
然后,在宏中,您只需添加:

check_type_pair!($arg_1, $arg_2);