24.11.2014 Views

Программирование на С++ - eDrive

Программирование на С++ - eDrive

Программирование на С++ - eDrive

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

13<br />

Задачи<br />

1. Заменить статический массив vec ди<strong>на</strong>мическим, внеся в программу соответствующие<br />

коррективы. Во-первых, в конструкторе следует выделять<br />

память массиву (vec = new double [rows]), а в деструкторе ее освобождать<br />

(delete [] vec). При этом вызов функции MyVectorToGrid выносится из деструктора<br />

в обработчики кнопок, для чего ее объявление перемещается в<br />

открытый раздел класса. Например, обработчик первой кнопки дополнится<br />

вызовами:<br />

MyClass myVector0(0, 1), myVector1(1, 1);<br />

myVector0.MyVectorToGrid ();<br />

myVector1.MyVectorToGrid ();<br />

Во-вторых, требуется перегрузить операторы индексации [] и присваивания<br />

=, а также создать конструктор копирования:<br />

double& operator [] (int i) { return vec[i]; }<br />

MyClass& operator = (const MyClass& c)<br />

{ if (this == &c) return *this;<br />

for (int i=0; i

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!