C++ 等效于 StringBuffer/StringBuilder?

2022-01-07 00:00:00 c++ string-concatenation stl

是否有 C++ 标准模板库类提供高效的字符串连接功能,类似于 C# 的 StringBuilder 或 Java 的 字符串缓冲区?

Is there a C++ Standard Template Library class that provides efficient string concatenation functionality, similar to C#'s StringBuilder or Java's StringBuffer?

推荐答案

C++ 的方式是使用 std::stringstream 或只是简单的字符串连接.C++ 字符串是可变的,因此连接的性能考虑不太重要.

The C++ way would be to use std::stringstream or just plain string concatenations. C++ strings are mutable so the performance considerations of concatenation are less of a concern.

关于格式化,您可以对流进行所有相同的格式化,但是 在一种不同的方式,类似于 cout.或者你可以使用一个强类型的函子来封装它并提供一个类似 String.Format 的接口,例如boost::format

with regards to formatting, you can do all the same formatting on a stream, but in a different way, similar to cout. or you can use a strongly typed functor which encapsulates this and provides a String.Format like interface e.g. boost::format

相关文章