Closed Matrix-A closed 7 months ago
表达式模板 和 std::ranges::zip_transform_view 实现了类似的内容。
ranges 库中的实现更复杂,如包含迭代器的实现、更复杂的使用环境等;
自己实现 表达式模板 可以省去部分未使用的代码实现,提升一丝丝性能(绝大部分情况下没有必要,直接用 ranges 库就好);
比我直接用 ranges 的写得要好。
有个宏 #define use_expr true 可以控制是否使用 ranges,
#define use_expr true
我用的是这个 std::ranges::zip_transform_view(std::multiplies{}, lhs, rhs);,都一样
std::ranges::zip_transform_view(std::multiplies{}, lhs, rhs);
表达式模板 和 std::ranges::zip_transform_view 实现了类似的内容。
ranges 库中的实现更复杂,如包含迭代器的实现、更复杂的使用环境等;
自己实现 表达式模板 可以省去部分未使用的代码实现,提升一丝丝性能(绝大部分情况下没有必要,直接用 ranges 库就好);