之间有效率差异吗
my_msg.SerializeToOstream(&std::cout);
和
google::protobuf::io::ZeroCopyOutputStream zcos(&std::cout);
my_msg.SerializeToZeroCopyStream(&zcos);
?
Google文档并没有说太多:
最佳答案
您可以检查源代码here。基本上,它们是相同的。
bool Message::SerializeToOstream(std::ostream* output) const {
{
io::OstreamOutputStream zero_copy_output(output);
if (!SerializeToZeroCopyStream(&zero_copy_output)) return false;
}
return output->good();
}