Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Новые рефераты » Перевантаження операцій в С + +

Реферат Перевантаження операцій в С + +





"> або * ).

Перевантаження сенсу операцій здійснюється за допомогою визначення відповідних функцій, що визначають алгоритм виконання операції над об'єктами класів. Визначення цих функцій повністю аналогічно визначенню методів класу, за винятком того, що в якості імені функції вказується рядок operator @, де @ - знак переобумовленої (частіше, доопределяется) операції. p align="justify"> Наприклад, можна довизначити операцію "+" для текстових рядків як операцію конкатенації (злиття рядків) наступним чином.

String {:

char * PointerToString;// Покажчик на строкуStringSize; // Довжина рядка

public:

String (char *); // Конструктор

~ String (); // Деструктор

void Print ();

String operator + (String); // Перевантаження операції

}; // "+"

// ---------------------------------------- ------------//

// Визначення сенсу операції "+" як//

// конкатенації текстових рядків//

// ---------------------------------------- ------------// String :: operator + (String One)

{

// Ініціалізація об'єкта Result

// (він буде результатом конкатенації) Result (""); Length;

// Копіювання першого рядка в результурующую (Result.PointerToString, One.PointerToString);

// Встановлення довжини рядка об'єкта, для якого

// буде викликана операція = strlen (One.PointerToString);

// Додавання другого рядка слідом за першою (Result.PointerToString, PointerToString + Length, (PointerToString));

// Установка загальної довжини рядка в результате.StringSize = strlen (Result.PointerToString) + 1;. PointerToString [Result.StringSize] = ' 0'; (Result);

}


. Перевантаження різних операцій


Для багатьох операцій С + + існують свої особливості при перевантаженні (доопределение). Так унарні операції перевизначаються з описом функції операції без аргументу, наприклад:

A {//... operator-- () {//текст функції для операції - } ;

// ...

};


Відповідно доопределение бінарної операції використовує опис функції операції з одни...


Назад | сторінка 2 з 6 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Порозрядні логічні Операції та Операції Зсув
  • Реферат на тему: Визначення ризику загальної анестезії та операції
  • Реферат на тему: Центральні банки, їх функції та операції
  • Реферат на тему: Функції, операції та послуги комерційних банків, їх баланс і прибуток
  • Реферат на тему: Операції ділення та визначення в логіці