你刚才把你char *变成了一个std::stringstream.
std::stringstream buffer(your_string);
然后你buffer几乎可以使用它std::ifstream(你无法打开或关闭它).理想情况下,您的parse-method将引用std::istreamas参数,然后它不会介意它接收的输入流类型:
void parse(std::istream & input);
由于这两个std::ifstream和std::stringstream继承std::istream,你可以将它们作为参数,解析器无需修改运行.