【发布时间】:2020-12-11 06:54:46
【问题描述】:
fmtlib 具有如下功能:
template <typename S, typename... Args, typename Char = char_t<S>>
inline std::basic_string<Char> format(const S& format_str, Args&&... args) {
return internal::vformat(
to_string_view(format_str),
{internal::make_args_checked<Args...>(format_str, args...)});
}
为了方便起见,我定义了一个宏,例如:
#define FMT fmt::format
我是这样使用的:
std::cout<<FMT("Name: {0}\n", "Joe");
在 C++11 中是否有替代使用宏的替代方法,最好是不会影响性能的替代方法?
【问题讨论】:
-
使用命名空间 fmt?
-
首选
using fmt::format。 -
hmmmmm,您能否提供一个minimal reproducible example,以便更轻松地演示您的问题的解决方案?
-
是的:不要使用宏或其他方式给事物起简短的神秘名称。请改用长描述性名称。长名字是你的朋友。