/* ISerializable(){};
* ISerializable(IStream&){}; */
virtual void Serialize(IStream &) const = 0;
+ virtual void Deserialize(IStream &) = 0;
virtual ~ISerializable(){}
};
template <typename T>
static void Deserialize(IStream& stream, T& object)
{
- object = T(stream);
+ object.Deserialize(stream);
}
template <typename T>
static void Deserialize(IStream& stream, T*& object)
{
- object = new T(stream);
+ object->Deserialize(stream);
}
// char