我什么时候使用,std::istringstream为什么不应该只在每个场景中使用(是否存在任何运行时性能问题?)。std::ostringstream``std::stringstream``std::stringstream
std::istringstream
std::ostringstream``std::stringstream``std::stringstream
最后,这有什么不好的(而不是使用流):
std::string stHehe("Hello "); stHehe += "stackoverflow.com"; stHehe += "!";
就个人而言,我发现我想要执行流进出同一个字符串流的情况非常少见。
通常我想从一个字符串初始化一个流然后解析它;或将事物流式传输到字符串流,然后提取结果并存储它。
如果您在同一个流之间进行流式传输,则必须非常小心流状态和流位置。
使用 ‘just’istringstream或ostringstream更好地表达您的意图并让您检查一些愚蠢的错误,例如意外使用<<vs >>。
istringstream
ostringstream
<<
>>
可能 会有一些性能改进,但我不会首先考虑这一点。
你写的没有错。如果您发现它的性能不够好,那么您可以分析其他方法,否则坚持使用最清晰的方法。就个人而言,我只是去:
std::string stHehe( "Hello stackoverflow.com!" );