C++ 二元对折
示例
二元褶皱基本上是一元褶皱,带有一个额外的论点。
有两种二进制折叠:
BinaryLeftFold--(valueop...oppack)扩展如下:
(((ValueopPack1)opPack2)op...)opPackN
二进制右折(packop...opvalue)-扩展如下:
Pack1op(...op(Pack(N-1)op(PackNopValue)))
这是一个例子:
template<typename... Ts>
int removeFrom(int num, Ts... args)
{
return (num - ... - args); //二进制左折
//请注意,不能使用二进制右折
//由于运算符缺乏关联性-
}
int result = removeFrom(1000, 5, 10, 15); //结果为1000-5-10-15=970
热门推荐
1 泰迪狗狗如何训练
3 狗狗训练图
5 狗狗训练方法
6 训练狗狗不咬人
8 敏捷训练狗狗
10 训练狗狗吃饭
11 泰迪狗狗训练
12 狗狗从多大开始训练
13 狗狗训练学校费用
14 怎么去训练狗狗
15 狗狗训练狗狗
16 狗狗训练教程
17 训练狗狗装死
18 泰迪狗狗的训练方法