文件名称:rx-ranges:接收
文件大小:38KB
文件格式:ZIP
更新时间:2024-04-01 08:34:34
C++
C ++ 17的范围更简单 C ++ 20中的范围看起来很笨拙。 这是C ++ 17的类似于范围的库,它提供了类似管道的语法的零开销列表列表。 可以对标准容器进行过滤,转换,通过各种算法进行传递,以优化循环,如果用手工编写,循环效率将更高。 目的是提供编写更具可读性的循环的工具,使程序员的意图清楚地传达给读者。 仔细模拟循环是阅读他人代码以及3个月前您自己的代码的常见但容易出错的部分。 该库大量使用了现代C ++ 17功能,因此需要兼容的C ++ 17编译器。 特征 任意可组合性。 Constexpr友好。 没有不必要的临时堆分配( foo | sort() | to_vector()仅分配到结果容器中)。 最小化堆分配:在可能的情况下,对结果容器使用reserve() 。 开放式生成器(无终止,无限范围)。 重新输入:一个非右值范围可以在一个函数中多次使用。 与标准容
【文件预览】:
rx-ranges-develop
----.github()
--------workflows()
----.clang-format(3KB)
----CMakeLists.txt(4KB)
----LICENSE(1KB)
----test()
--------calendar.cpp(2KB)
--------benchmark.cpp(10KB)
--------test_ranges.cpp(27KB)
----AUTHORS.md(34B)
----README.md(16KB)
----.gitignore(133B)
----CHANGELOG.md(3KB)
----include()
--------rx()