我想扩展浮点类型的格式选项,最好保留一些现有的选项。例如,我想为度量值添加一个新的type说明符,其单位如下所示:std::format({:.5mm}, 0.05f),并将数据打印为precision=5,但也要乘以1000并以'mm'为前缀。这可能吗
type
std::format({:.5mm}, 0.05f)
precision=5
ki1q1bka1#
float等基本类型的格式规范已内置到系统中;你不能扩展它们。你可以将它们 Package 在一个用户定义的类型中,你可以对它应用任何你喜欢的格式。如注解中所示,std::format("{:.5mm}", MyUnit(0.05f)),其中MyUnit是您的类型,它有自己的格式规范。
float
std::format("{:.5mm}", MyUnit(0.05f))
MyUnit
1条答案
按热度按时间ki1q1bka1#
float
等基本类型的格式规范已内置到系统中;你不能扩展它们。你可以将它们 Package 在一个用户定义的类型中,你可以对它应用任何你喜欢的格式。如注解中所示,
std::format("{:.5mm}", MyUnit(0.05f))
,其中MyUnit
是您的类型,它有自己的格式规范。