提交 c3e6cdc3 编写于 作者: B Brian Johnson

Optimization for string. GH #2350

上级 c200c0a9
......@@ -225,18 +225,19 @@ inline datastream<Stream>& operator>>(datastream<Stream>& ds, checksum256& d) {
template<typename DataStream>
DataStream& operator << ( DataStream& ds, const std::string& v ) {
ds << unsigned_int( v.size() );
for( const auto& i : v )
ds << i;
if (v.size())
ds.write(v.data(), v.size());
return ds;
}
template<typename DataStream>
DataStream& operator >> ( DataStream& ds, std::string& v ) {
unsigned_int s;
ds >> s;
v.resize(s.value);
for( auto& i : v )
ds >> i;
std::vector<char> tmp;
ds >> tmp;
if( tmp.size() )
v = std::string(tmp.data(),tmp.data()+tmp.size());
else
v = std::string();
return ds;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册