У вас вопросы?
У нас ответы:) SamZan.net

тема Windows; середовище програмування Visul C

Работа добавлена на сайт samzan.net: 2016-03-13

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 5.4.2025

Практична робота № 5. «Дослідження перевантаження операцій та операторів»

Мета: Оволодіти практичними навичками по розробці класів, що містять перевантажені операції.

Обладнання та програмне забезпечення: IBM PC – сумісний ПК; операційна система Windows; середовище програмування Visual C++.

Порядок виконання.

  1.  Для заданого варіанту розробити клас, що містить перевантажені операції.
  2.  Реалізувати заданий клас використовуючи зовнішній опис методів класу.

У звіт входить текст програми і відповіді на контрольні запитання.

Контрольні запитання.

  1.  В чому полягає зміст перевантаження операцій, на чому побудований механізм перевантаження?
  2.  Який формат запису операторної функції?
  3.  Які операції не перевантажуються?
  4.  Яких правил слід притримуватись при перевантаженні бінарних операцій.

Теоретичні відомості

Мова С++

Опис перевантаження операцій:

<опис перевантаження операцій> ::=

<опис перевантаження унарної операції> |

<опис перевантаження бінарної операції>

<опис перевантаження унарної операції> ::= <позначка класу>

            operator <позначка унарної операції> ( )

{<тіло перевантаженої унарної операції>}

<тіло перевантаженої унарної операції> ::= <тіло закритої

підпрограми, яке закінчується оператором  return *this;>

<опис перевантаження бінарної операції> ::=

<позначка типу значення, що вироблюється>

operator <позначка бінарної операції> (<параметр> )

{<тіло перевантаженої операції>}

<тіло перевантаженої операції>::= <тіло закритої підпрограми>

<параметр> ::= <другий операнд перевантаженої бінарної операції>

Опис перевантаження оператора привласнення:

<опис перевантаження оператора привласнення>::=

<позначка класу>& operator = (<пар. const>)

{<тіло перевантаженого оператора>}

<пар. const> ::= const <позначка класу> & <ідентифікатор>

<тіло перевантаженого оператора> ::= <тіло закритої підпрограми,

яке закінчується оператором return *this;>

Методичні рекомендації

Пам’ятайте, що якщо при використанні бінарної операції або оператора з об’єктом вашого класу тип першого операнда не збігається з типом вашого класу, то опис перевантаження такої операції або оператора необхідно робити як дружню функцію. У цьому випадку обидва операнди передаються в списку параметрів.

Якщо перевантаження унарної операції описується як метод класу, то в нього відсутній список параметрів, тому що єдиний операнд цієї операції є неявним аргументом (*this).


Варіанти завдань.

№ варіанту

Клас

Перевантажувані операції

№ варіанту

Клас

Перевантажувані операції

  1.  

англійських мір довжин

-=,*, >

  1.  

англійських мір довжин

<, *=, /

  1.  

англійських мір ваги (фунти, унції)

+,*=,>

  1.  

англійських мір ваги (фунти, унції)

-,+=,= =

  1.  

комплексних чисел

+,= =,-=

  1.  

комплексних чисел

-, <, +=

  1.  

вектор

+, скалярний добуток

  1.  

вектор

-, скалярний добуток

  1.  

правильні дроби

+, *=, >

  1.  

правильні дроби

-, += ,<

  1.  

англійських мір довжин

/=, -, <

  1.  

англійських мір довжин

>, -=,*

  1.  

англійських мір ваги (фунти, унції)

*,+=,>

  1.  

англійських мір ваги (фунти, унції)

-,*=,  <,

  1.  

комплексних чисел

-, *=, <

  1.  

комплексних чисел

+, /=, >

  1.  

вектор

добуток на число, скалярний добуток

  1.  

правильні дроби

+, /=, >

  1.  

правильні дроби

-, +=, >

  1.  

правильні дроби

+, *=, = =

  1.  

англійських мір довжин

- -, *=, <

  1.  

англійських мір довжин

++, -=, >,

  1.  

англійських мір ваги (фунти, унції)

++, -=, >,

  1.  

англійських мір ваги (фунти, унції)

- -, *=, <

  1.  

комплексних чисел

+,>,*=

  1.  

комплексних чисел

-, <, *=

  1.  

правильні дроби

/, -=, >

  1.  

правильні дроби

*, +=, = =

  1.  

правильні дроби

+, /=, = =

  1.  

правильні дроби

-, /=, <




1. 1Описание изделия Производству предлагается блок микроэлектромеханического датчика линейных ускорений
2. Содержание калькулирования и его роль в управлении производством
3. Задание- Подумайте с какой целью на нашем уроке вывешена эта карта карта полушарий Как она иллюстрирует
4. Запровадження Християнства на Русі
5. Технология обработки продуктов с использованием ВЧ
6. Статья- Горы- от душевного и физического напряжения к здоровью
7. Курсовая работа на тему- Системный подход в управлении современной организации Выполнил студент 3 ку
8. Поэтика экспозиций в литературных памятниках Руси XII века
9. форма определяется функцией
10. Автострахование