69707

Перевантаження функцій

Лекция

Информатика, кибернетика и программирование

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

Украинкский

2015-01-11

27.5 KB

1 чел.

Тема: Перевантаження функцій

Перевантаження функцій — це використання одного імені для декількох функцій. Секрет перевантаження полягає в тому, що кожне перевизначення функції повинне використовувати або інші типи параметрів, або іншу їх кількість. Тільки ці відмінності дозволяють компілятору визначати, яку функцію слід викликати в тому або іншому випадку. Наприклад, в наступній програмі функція myfunc () перегружена для різних типів параметрів.

#include <iostream>

using namespace std;

int myfunc(int i);

// Ці варіанти розрізняються типами параметрів

double myfunc(double і);

int main()

{

cout << myfunc(10)<< " "; // Виклик функції myfunc(int i)

cout << myfunc(5.4); //Виклик функції myfunc(double i)

return 0;

}

double myfunc(double i) { return і; }

int myfunc(int i) { return і; }

В наступній програмі перевантажені варіанти функції myfunc () використовують різну кількість параметрів.

#include <iostream>

using namespace std;

int myfunc(int i);

// Ці варіанти розрізняються кількістю параметрів

int myfunc(int і, int j);

int main()

{

cout << myfunc(10)<< " "; // Виклик функції myfunc(int i)

cout << myfunc(4, 5); // Виклик функції myfunc(int i, int j)

return 0;

int myfunc(int i)

{

return i;

}

int myfunc (int і, int j )

{

return x*j ;

}

Слід пям'ятати, що перевантажені функції повинні відрізнятися типами або кількістю параметрів. Тип значення, яке повертається, не дозволяє перенавантажувати функції. Наприклад, наступний варіант перевантаження функції myfunc () невірний.

int myfunc(int i); // Помилка: різних типів повертаємого

float myfunc(int і);

// значення недостатнь для перевантаження

Іноді оголошення двох функцій зовні відрізняються, але фактично співпадають. Приклад такого оголошення:

void f (int *p) ;

void f(int p[]); // Помилка, вирази *р і р[] еквівалентні

Треба пам'ятати, що компілятор не розрізняє виразу *р і р [ ]. Хоча зовні два прототипи функції f розрізняються, насправді вони повністю співпадають.


 

А также другие работы, которые могут Вас заинтересовать

54228. Решение задач с помощью уравнений 297 KB
  Оборудование: мультимедийное оборудование, презентация, инидвидуальные карточки с дополнительными, тестовими заданиями, роздаточный матеріал «Алгоритм решения задач с помощью уравнений»
54229. Действия с натуральными числами 148.5 KB
  Цель: обобщить, систематизировать знания и умения учащихся по теме; закрепить навыки решения задач и упражнений на действия с натуральными числами; развивать четкость и логику мышления; воспитывать чувство патриотизма, гордости, любви к Украине, родному городу Луганску.
54230. Розвязування задач на додавання і віднімання натуральних чисел 106.5 KB
  Мета: Навчальна: удосконалити вміння застосовувати правила та властивості додавання і віднімання натуральних чисел до розвязування задач; Розвивальна: сприяти розвитку логічного мислення обчислювальних навичок учнів культуру математичної мови і записів; формувати інтерес до математики; Виховна: виховувати самостійність наполегливість взаємодовіру навчити працювати за аналогією. Обладнання і наочність: плакати з короткими...
54231. Дії з натуральними числами 3.21 MB
  Мета: узагальнення та систематизація знань, умінь та навичок; розвиток логічного мислення, обчислювальних навичок, інтересу до математики, культури математичного мовлення, самостійності; виховання віри в свої сили, уважності, наполегливості.
54232. Десятичная дробь. Чтение и запись десятичной дроби 194 KB
  Тип урока: урок усвоения знаний и умений Цели урока: повторить учебный материал по теме: Обыкновенные дроби сформировать у учащихся понятие о десятичной дроби; сформировать умение...
54233. Додавання та віднімання десяткових дробів 84.5 KB
  Мета: розвивати валеологічні та інформаційні компетентності, соціально-комунікативні навички учнів; сприяти створенню довірливих стосунків між школярами; створювати в колективі атмосферу доброзичливості; удосконалювати вміння та навички у розвязанні вправ за даною темою; розвивати техніку усного рахування, культуру математичної мови.
54234. Береги здоровье смолоду 37 KB
  Решение задач Задача 1. Какой процент человечества доживает до 80 лет и более Задача 2. Сколько должен жить человек по законам животного мираесли считатьчто он становится взрослым к 16 годам Задача 3. Задача 4.
54235. Додавання і віднімання дробових чисел. Підготовка до контрольної роботи 115 KB
  Мета. Узагальнити та систематизувати знання та уміння учнів із теми «Додавання і віднімання дробових чисел». Розвивати пам’ять, самостійність, мислення, увагу. Виховувати інтерес до предмету, культуру мови та письма. Формувати соціальну, здоров’єзберігаючу, комунікативну компетентності.
54236. Рівняння. Основні властивості рівняння 80 KB
  Мета: Повторити вивчений матеріал про рівняння його корені та способи розвязування; Вивести основні властивості рівняння на основі вивченого матеріалу; Закріпити набуті знання розвязуванням різнотипних рівнянь; Очікувані результати: Вивчити основні властивості рівняння; За допомогою основних властивостей рівняння навчитися їх розвязувати.