gpt4 book ai didi

c++ - libfmt 和 std::format 之间有什么区别?

转载 作者:行者123 更新时间:2023-12-01 13:30:13 25 4
gpt4 key购买 nike

我知道 c++20 格式提案是 libfmt 部分的形式化,而 libfmt 是该形式化的兼容实现。但是,据我所知,libfmt 提供的功能超出了 c++20 标准中指定的功能。有哪些附加功能?
另外,主要编译器供应商是简单地包含 libfmt 的一个子集还是重新实现它?

最佳答案

libfmt 中有很多不是 C++20 格式的东西:

  • fmt::print()直接打印到标准输出。这是在 P2093 中提出的. fmt::printf()也存在但未在该论文中提出。
  • fmt::memory_buffer基本上是一个动态大小的容器,您可以通过 fmt::format_to(buf, ...) 将其格式化为.
  • 支持格式化 ranges and tuples ,包括 fmt::join() .
  • 支持 named arguments喜欢 fmt::print("Elapsed time: {s:.2f} seconds", "s"_a=1.23);
  • 编译时格式字符串通过 FMT_COMPILE
  • 关于c++ - libfmt 和 std::format 之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63586747/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com