eis/mix_cc/serialize/deserialize.h

35 lines
751 B
C
Raw Normal View History

/**
* @file mix_cc/serialize/deserialize.h
* @brief
* @author Cat (null.null.null@qq.com)
* @version 0.1
* @date 2021-06-18
*
* Company: Baosight Co. Ltd.
* DO NOT COPY/USE WITHOUT PERMISSION
*
*/
#pragma once
#include <boost/archive/text_iarchive.hpp>
#include <boost/serialization/vector.hpp>
#include <sstream>
#include <string>
namespace mix_cc {
/**
* @brief
* @tparam Tp
* @param str My Param doc
* @return Tp
*/
template <typename Tp>
Tp deserialize(std::string str) {
Tp data;
std::stringstream ss;
ss << str;
boost::archive::text_iarchive ia(ss);
boost::serialization::load(ia, data, 0);
return data;
}
} // namespace mix_cc