使用最新版本的 fmt 库(最近的标签是 11.1.4)则没有这个问题。 当使用 Clang 自带的libc++库时,std::print比fmt::print慢出很多(近十倍,远超出其他环境下的差值)。但是,如果使用 macOS 自带的Apple Clang又没有这个问题。 于是,我对这些问题一一进行了探究。 Windows 下的问题分析 直接向ostream输出format的结...
半夜醒来刷知乎,无意间看到了@Cherrise的大作:如何设计一个安全的print方法。直接把我气的睡不着了。 简单来说,这位作者认为std::format是不安全的。 voidtest1(){std::format("{0}{1}",23);//挂掉!参数数量少于格式化字符串中要求的参数数量}voidtest2(){std::format("{:X}","123");//挂掉!输入的...