Rust中是否有类似表达式模板的内容?

rub*_*nvb 6 c++ rust

在C ++中,表达式模板是一种技术,该技术依赖于编译器对C ++代码中表达式的了解,可以简化表达式并优化它们,而不是在程序程序中实现。这是一种强大的技术,例如Eigen和Armadillo矩阵库使用它来加快对矩阵的某些复合运算。一个本征网页上的不完整的wiki页面几乎开始解释它。

我想知道Rust中是否存在类似的技术,即是否有一种方法可以使Rust编译器在编译时优化某些表达式,以便创建最少数量的临时文件。

Art*_*mGr 5

如果我正确阅读了表达式模板,那么您可以看到它们与 Rust 迭代器一起使用:filtertake等方法返回一个表达式模板,一个表示计算但在请求之前不会执行它的结构。这会立即提供您需要的优化,不会创建临时文件。

使用where子句我想人们可以编写特化来进一步优化某些计算组合。