小编Ani*_*ury的帖子

如何在两个 C++20 范围上实现延迟计算的函数?

zip_withEric Niebler 提供了一个函数。

但是,既然 C++20 支持范围,我想构建类似的东西。

这个问题filter,并transform为他们迭代的范围?

我该怎么做呢?我已经坚持了一段时间,并且不愿意使用表达式模板。

例如,假设我有两个向量 M1{1,2,3} 和 M2{4,5,6}。

我想使用范围库来重载运算符以返回包含这两个矩阵相加的视图 - M1+M2 := {5,7,9}

使用 range-v3,我可以执行 auto sum = zip_with(std::plus,M1,M2);

上面的表达式是惰性求值的。如何使用 C++20 范围重新创建此表达式?

c++ lazy-evaluation range-v3 c++20

7
推荐指数
1
解决办法
355
查看次数

我如何使用初始化列表直接创建我的链表?

我在名称空间下写了一个模板链接列表mylib.

现在我想做的是:

mylib::list<int> x = {2,3,4,5}
Run Code Online (Sandbox Code Playgroud)

我想要做的是创建一个构造函数或重载赋值运算符来写上面的代码.我在这里阅读动态数组重载赋值运算符的初始化列表

我不可能想到如何做到这一点.

c++ constructor initialization list c++11

2
推荐指数
1
解决办法
154
查看次数