Задать вопрос
@trubanenkoalex

Как сделать сериализацию и десериализацию в c++?

В классах Derived1, Derived2 и Derived3 реализовать виртуальные функции Serialize и Deserialize. Функция Serialize должна сохранять все свои данные в буфер, указанный в параметрах функции. Deserialize должна восстанавливать данные объекта из буфера, указанного в параметрах функции.
В классе Inter добавлены две виртуальные функции, в дочерних классах должны реализовать данные функции
Ниже пример абстрактного класса и самого простого дочернего класса
class Inter  {
public:
	virtual void input() = 0;
	virtual void output() = 0;	
	virtual void serialize() = 0;
	virtual void deserialize() = 0;

};

#ifndef LANGUAGE
#define LANGUAGE
#include "student.h"

class ProgramLanguage :public Student {

private:
	char* lang_name;
public:

	virtual void input ();
	virtual void output();
	virtual void serialize();
	virtual void deserialize();
	ProgramLanguage(const ProgramLanguage&) { assert(false); }
	void operator=(const ProgramLanguage&) { assert(false); }
	ProgramLanguage(const char* lang_name);

	virtual ~ProgramLanguage();
};
#endif // !LANGUAGE

#include "language.h"

ProgramLanguage::ProgramLanguage(const char* lang_name){
	this->lang_name = new char[20];
	strcpy(this->lang_name, lang_name);
}

void ProgramLanguage::input() {

}

void ProgramLanguage::output() {
	Student::output();
	printf("Language name: %s\n", lang_name);
}

void ProgramLanguage::serialize(Archive& ar) {
   

}

void ProgramLanguage::deserialize() {

}
  • Вопрос задан
  • 145 просмотров
Подписаться 1 Простой 5 комментариев
Пригласить эксперта
Ответы на вопрос 1
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы