FunctionalPlus C++ 编码库开源项目

我要开发同款
匿名用户2015年11月26日
85阅读
开发技术C/C++
所属分类开发工具、C/C++开发工具
授权协议BSL

作品详情

FunctionalPlus是一个小的表头库,它可以降低代码噪声,一次只处理一个单一等级的的抽象对象。通过增加你的代码的简洁性和可维护性来提高生产效率和编码乐趣。从长远的角度来看,它可以通过提供易于使用的功能将你从实现控制的流中解放出来。

示例代码:

#include "FunctionalPlus/FunctionalPlus.h"#include <iostream>// std::list<std::uint64_t> CollatzSeq(std::uint64_t x) { ... }int main(){    using namespace FunctionalPlus;    using namespace std;    typedef list<uint64_t> Ints;        // [1, 2, 3 ... 29]    auto numbers = GenerateIntegralRange<Ints>(1, 30);        // A function that does [1, 2, 3, 4, 5] -> "[1 => 2 => 3 => 4 => 5]"    auto ShowInts = Bind1of2(ShowContWith<Ints>, " => ");        // A composed function that calculates a Collatz sequence and shows it.    auto ShowCollatsSeq = Compose(CollatzSeq, ShowInts);        // Apply it to all our numbers.    auto seqStrs = Transform(ShowCollatsSeq, numbers);        // Combine the numbers and their sequence representations into a map.    auto collatzDict = CreateMap(numbers, seqStrs);        // Print some of the sequences.    cout << collatzDict[13] << endl;    cout << collatzDict[17] << endl;}
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论