首页 > 编程语言 >C++强大、高性能、易于使用的format库

C++强大、高性能、易于使用的format库

时间:2023-07-25 14:11:54浏览次数:34  
标签:code format fmt library 高性能 C++ support

 

fmtlib/fmt: A modern formatting library (github.com)

 

{fmt} is an open-source formatting library providing a fast and safe alternative to C stdio and C++ iostreams.

 

Documentation

Cheat Sheets

Q&A: ask questions on StackOverflow with the tag fmt.

Try {fmt} in Compiler Explorer.

Features

  • Simple format API with positional arguments for localization
  • Implementation of C++20 std::format
  • Format string syntax similar to Python's format
  • Fast IEEE 754 floating-point formatter with correct rounding, shortness and round-trip guarantees using the Dragonbox algorithm
  • Portable Unicode support
  • Safe printf implementation including the POSIX extension for positional arguments
  • Extensibility: support for user-defined types
  • High performance: faster than common standard library implementations of (s)printf, iostreams, to_string and to_chars, see Speed tests and Converting a hundred million integers to strings per second
  • Small code size both in terms of source code with the minimum configuration consisting of just three files, core.hformat.h and format-inl.h, and compiled code; see Compile time and code bloat
  • Reliability: the library has an extensive set of tests and is continuously fuzzed
  • Safety: the library is fully type-safe, errors in format strings can be reported at compile time, automatic memory management prevents buffer overflow errors
  • Ease of use: small self-contained code base, no external dependencies, permissive MIT license
  • Portability with consistent output across platforms and support for older compilers
  • Clean warning-free codebase even on high warning levels such as -Wall -Wextra -pedantic
  • Locale independence by default
  • Optional header-only configuration enabled with the FMT_HEADER_ONLY macro

See the documentation for more details.

 

 

 

标签:code,format,fmt,library,高性能,C++,support
From: https://www.cnblogs.com/sinferwu/p/17579746.html

相关文章

  • C++20 Ranges简述
    C++20引入了范围(Ranges)的新特性,这是一种现代化的、功能强大的处理序列数据的机制。范围(Ranges)的目标是提供一种更简洁、更易读、更安全且更高效的方式来操作数据序列,代替传统的迭代器和手动循环操作。这里是C++20Ranges的一些详细解释:范围概念:范围(Ranges)是一种统一的序......
  • C++中定义一个二维数组
    在C++中定义二维数组有很多种方式1.第一种方式:定义一个二级指针(指向指针的指针)#include<iostream>usingnamespacestd;voidTraverse(int**p);intmain(){//two-dimensionarrayintm=3,n=5;int**arr=newint*[m];arr[0]=newint[n];arr[1......
  • C++11 可平凡复制类型 (TriviallyCopyable)
    可平凡复制类型标量类型(算数类型/枚举/指针)可平凡复制类类型可平凡复制类型的数组cv限定的可平凡复制类型(const/volatile)TriviallycopyableclassAtriviallycopyableclassisaclassthathasatleastoneeligiblecopyconstructor,moveconstructor,copyassi......
  • Code-OpenSource-JSON for Modern C++ v3.10.5
    Code-OpenSource-JSONforModernC++v3.10.5github.com/nlohmann/jsonhttps://json.nlohmann.me/home/exceptions/#version-historyhttps://json.nlohmann.me/api/macros/json_diagnostics/#extended-diagnostic-messages#defineJSON_DIAGNOSTICS1输出详细信息......
  • c++学习经验总结
    1.关于结构体中定义函数在C++中,结构体中定义函数没问题在C中,则不行。会报expectedspecifier-qualifier-listbefore...2.在C++中,结构体与类的区别:在C++中,结构体是一种特殊形态的类。结构体和类的唯一区别就是:结构体和类具有不同的默认访问控制属性。3.C与C++中结构体......
  • (数据科学学习手札153)基于martin的高性能矢量切片地图服务构建
    本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes1简介大家好我是费老师,在日常研发地图类应用的场景中,为了在地图上快速加载大量的矢量要素,且方便快捷的在前端处理矢量的样式,且矢量数据可以携带对应的若干属性字段,目前主流的做法......
  • C++ bitset
    C++bitset是C++STL库中的一个类,用于存储二进制位的数组,并提供了一些位操作的函数。下面是一些C++bitset的语法:创建一个bitset:可以使用以下语法创建一个bitset:std::bitset<size>bits;//创建一个大小为size的bitset,所有位都被设置为0std::bitset<size>bits(val);//创......
  • c++打印类的内存布局
    内存布局默认32位编译下,4字节对齐有虚函数情况下会在内存一开始多一个虚表指针普通函数不占内存空间静态成员不占内存空间1.通过cl命令输出hello.cpp中的类A的内存布局测试#输出指定类型的内存布局clhello.cpp/d1reportSingleClassLayoutA#输出所有类型的内存布局......
  • JeecgBoot轻松解决ERP项目复杂布局需求,JVXETable高性能表格效果和项目案例
    ERP项目表格布局一般都很复杂,要求大数据、高性能操作,这个用JeecgBoot如何解决呢?下边是我们之前服务过的一个应用行编辑的ERP项目,以强大的行编辑功能,让客户很满意,下面我们来看一下这个项目:1.客户需求每行数据可以实时编辑、自动保存,其他用户数据实时刷新并且有日历翻牌效果......
  • 记录windows、vs2019、c++、cuda环境配置
    原文链接:   (45条消息)CUDA+Windows+VS环境配置_cudavs_哈哈哈哈哈嗝哈哈哈的博客-CSDN博客            VS2019--c++CUDA环境配置与编程实例-知乎(zhihu.com)测试代码:.cu文件中:#include"stdio.h"#include<cuda_runtime.h>#include<devi......