Transform C++11
Transform C++11
我有一个代码,可以计算一定数量的分数之和,乘以所问问题的总数,除以20。问题是,一定数量的点的总和是向量类型的,并且问题总数是两倍。所以我需要把向量转换成二重。我得到这个代码
return std::accumulate(begin(chiffre), end(chiffre), 0.0, [](double a, double b)->double { return a + b * 20;}) / nbtotal;
但这是C++11,我的程序没有使用C++11,所以我需要将此代码转换为C++98。我真的不知道该怎么办。如果有人能帮忙,不要犹豫!对不起我的英语!!:)
您可以创建一个正常的函数:
static double myAdd(double a, double b) {
return a + b * 20;
}
//...
return std::accumulate(chiffre.begin(), chiffre.end(), 0.0, myAdd) / nbtotal;
您还必须将begin(chiffre)
更改为chiffre.begin()
,end
也是如此,因为这些全局函数只出现在C++11中(假设您不是自己编写的)。
相关文章:
- 使用std::transform将一个范围的元素添加到另一个范围中
- MSVC是否支持C++11样式的属性而不是__declspec
- 创建LinkedList退出,返回代码为-11(SIGSEGV)
- 我可以将一个用clang c++11编译的对象与另一个用c++17编译的对象链接起来吗
- 继承:构造函数,初始化C++11中基类的类C数组成员
- 如何将模板转换为C++11之前的模板
- c++11评估顺序(未定义的行为)
- C++中的VLA,扩展名为std=C++11
- 代码在我的计算机上运行良好,但是在将其提交给coursera时遇到未知的信号11问题
- "类模板示例<int>;"语句对 C++11 是什么意思?
- this_thread::sleep_for和计时时钟之间的关系是否由C++11标准指定
- 如何使用lock_guard在c++11中实现scoped_lock功能
- C++11 中不同类型的对象的 std::array 的替代方案
- 为什么 -mmacosx-version-min=10.10 不阻止使用标记为从 10.11 开始的函数?
- 为什么我的C++代码中出现'Segmentation Fault: 11'行?
- 强枚举类型定义:Clang Bug 还是 C++11 标准不确定性?
- 别名模板的专业化 C++11 中没有开销的最佳替代方案
- STLPort using C++11
- Qt 5.11.2 (Clang 8.0 (Apple), 64 位), 找不到 QJSEngine 文件
- Transform C++11