fmt是C++20标准std::format的参考实现和超集,更安全高效;支持编译时检查、自定义类型、日期时间等;可通过vcpkg/Conan安装或单头文件嵌入。

fmt 是一个现代、安全、高性能的 C++ 格式化库,比 std::iostream 更简洁,比 printf 更类型安全。它已被纳入 C++20 标准(std::format),而 fmt 库本身是其参考实现和超集,支持更多功能(如编译时格式检查、自定义类型格式化、日期时间、宽字符等)。
快速上手:安装与基础用法
推荐使用 vcpkg 或 Conan 管理依赖,也可直接下载单头文件 fmt/format.h(轻量嵌入):
- vcpkg:
vcpkg install fmt,CMake 中find_package(fmt CONFIG) - 单头版:从 github.com/fmtlib/fmt 下载
include/fmt/format.h,直接#include "fmt/format.h"
最简示例:
#include "fmt/format.h"
#include <iostream>
int main() {
std::string s = fmt::format("Hello, {}! You have {} messages.", "Alice", 42);
std::cout << s << "\n"; // 输出:Hello, Alice! You have 42 messages.
}
登录后复制
核心优势:类型安全 + 编译时检查
fmt 在编译期解析格式字符串,自动匹配参数类型,杜绝 printf 的 %d/%%s 错配或越界访问问题:
立即学习“C++免费学习笔记(深入)”;
标签: git github ai c++ ios stream
还木有评论哦,快来抢沙发吧~