fmtlib 如何格式化部分 std::vector
时间: 2023-09-10 14:08:32 浏览: 181
std::string format格式化函数源代码及两种格式化方法
5星 · 资源好评率100%
你可以使用 fmt::format_range 函数对部分 std::vector 进行格式化输出。该函数的第一个参数接受一个输出迭代器,指定格式化输出的位置,第二个参数和第三个参数分别是需要格式化输出的区间的起始和结束迭代器。
下面是一个简单的例子,演示如何使用 fmt::format_range 函数对 std::vector 的前三个元素进行格式化输出:
```cpp
#include <fmt/format.h>
#include <vector>
int main() {
std::vector<int> v = {1, 2, 3, 4, 5};
auto output = fmt::memory_buffer{};
fmt::format_range(std::back_inserter(output), "[{}]", v.begin(), v.begin() + 3);
fmt::print("{}\n", output);
}
```
输出结果为:
```
[1, 2, 3]
```
在上面的例子中,我们使用了 fmt::memory_buffer 作为输出迭代器,它会将格式化输出写入内存缓冲区中。你也可以使用其他类型的输出迭代器,比如 std::ostream_iterator,将格式化输出写入到流中。
阅读全文