Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Lab / Определения функций-элементов класса Array 3

.doc
Скачиваний:
3
Добавлен:
16.02.2016
Размер:
32.26 Кб
Скачать

// Проверка равенства двух массивов

//и возвращение значения 1, если равны, и значения О,

// если не равны.

int Array::operator==(const Array &right) const

{

if (size != right.size)

return 0; // массивы разных размеров

for (int i = 0; i < size; i++)

if (ptr [i] !== right.ptr [i] )

return 0; // массивы не равны

return 1; // массивы равны

}

// Проверка неравенства двух массивов и возвращение значения 1, // если не равны, и значения 0, если равны,

int Array::operator!=(const Array &right) const

{

if (size != right.size)

return 1; // массивы разных размеров

for (int i = 0; i < size; i++) if (ptrt[i] !=right.ptr[i])

return 1; // массивы не равны

return 0; // массивы равны

}

// Перегруженная операция индексации int &Array::operator[](int subscript)

{

// проверка ошибочного выхода индекса из диапазона

assert(0 <= subscript && subscript < size);

return ptr[subscript]; // возвращение ссылки создает L-величину }

// Возвращение числа возникших объектов Array

int Array::getArrayCount( ) { return arrayCount; }

// Перегруженная операция ввода для класса Array;

// вводит значения всего массива

istream &operator>>(istream &input, Array &a)

{

for (int i = 0; i < a.size; i++)

input >> a.ptr[i];

return input; //позволяет cin >> x >> y;

}