2016-04-17 2 views
-1

У меня есть класс:Сохранение копии текущего объекта

`class Myclass 
{ 
    public: 
    MyClass (void); 
    AddNumber (const int num); 
    CopyCurrentObject (void); 

    private: 
    int * array 
    int size; 
    int maxSize; 
    MyClass * objetcts[10]; 
} 

Как я могу создать копию моего текущего объекта и сохранить его MyClass * objects[10]?

С копией я имею в виду, что я хочу, чтобы создать временный объект с текущими значениями моего текущего объекта (элементы в массиве, размер, MaxSize) и хранить его в MyClass * objects[10]. Это в основном что-то вроде резервного копирования.

создать временный объект и сохранить объект в массиве, как это:

MyClass * temp = new MyClass (* this); MyClass objects[cnt++] = temp;

Проблема с int * array, потому что таким образом он указывает на мой массив объектов так всякий раз, когда я добавить значение в моем объекте , хранятся объекты в MyClass * objects[10].

+1

Примите больше заботы. Отсортируйте свои опечатки. Я вижу три в вашем коде сразу. –

ответ

0

Вы должны реализовать конструктор копирования и оператор присваивания.

Myclass(const Myclass& orig); Myclass& operator=(const Myclass& orig);

Смежные вопросы