fast_io基于 C++ Concepts 的 IO 库
fast_io 是基于 C++ 20 Concepts 的 C++ IO 异常安全 RAII 库,它比 cstdio、iostream 快至少十倍。
设计目标:
快速
- 可选的本机原生化支持
- 零拷贝 IO
安全
- 没有像 std::endl 这样容易误用的东西
- 没有内部 iomanip 状态(因为会产生安全问题)
- 提供 FILE*&POSIX 文件 ID RAII 资源管理
易于使用
- 支持 Unicode/UTF-8
- 与 C stdio 和 C++ iostream 兼容
- 普通可复制类型和 C++ 标准库容器的二进制序列化
- 所有 fast_io 设备都可以本地放置在 C++ 容器中,std::vector<fast_io::obuf> 有效
- 支持 C 样式 IO 格式(fprint)、Basic/Lua/Python 等格式(print、scan)
可定制性
- 异常安全和异常中立(Exception Safe & Exception neutral)
- Native Handle Interface
- 极其容易支持定制设备
- std::mutex mutex stream
- 编译时开启模式解析,支持 C 样式开启模式和 C++ 样式开启模式。
- 没有 traits_type 与 EOF
- 支持动态类型
- 支持管道
- 加密,替换 openssl
- debugging IO
编译支持:
- VS 16.3
- Clang 10.0
- GCC 10
平台支持:
- Windows
- Linux
- MacOS
- Android
评论