Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Контакти
 


Тлумачний словник
Авто
Автоматизація
Архітектура
Астрономія
Аудит
Біологія
Будівництво
Бухгалтерія
Винахідництво
Виробництво
Військова справа
Генетика
Географія
Геологія
Господарство
Держава
Дім
Екологія
Економетрика
Економіка
Електроніка
Журналістика та ЗМІ
Зв'язок
Іноземні мови
Інформатика
Історія
Комп'ютери
Креслення
Кулінарія
Культура
Лексикологія
Література
Логіка
Маркетинг
Математика
Машинобудування
Медицина
Менеджмент
Метали і Зварювання
Механіка
Мистецтво
Музика
Населення
Освіта
Охорона безпеки життя
Охорона Праці
Педагогіка
Політика
Право
Програмування
Промисловість
Психологія
Радіо
Регилия
Соціологія
Спорт
Стандартизація
Технології
Торгівля
Туризм
Фізика
Фізіологія
Філософія
Фінанси
Хімія
Юриспунденкция






Функція main()

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

1. int main();

2. int main(int argc, char *argv[]);

Як видно з другої форми запису, функція main() підтримує два параметра – argc та argv. Ці дві змінні будуть зберігати кількість аргументів командного рядка та покажчик на них. Параметр argc має цілий тип, та його значення завжди буде не менше за 1, тому що у мові С++, першим аргументом завжди є ім’я програми. Параметр argv повинен бути оголошений як масив символьних покажчиків, в якому кожний елемент вказує на аргумент командного рядку.

Масиви не можуть(не рекомендовано) бути параметрами функцій, але можна передати покажчик на масив. Функції можуть повертати покажчик на масив в якості результата.

Посилання в мові С++

В мові С++ посиланням є інше ім’я існуючого об’єкту. Для визначення посилання використовується символ &, якщо він використовується у такому контексті:

type&ім’я_посилання ініціалізатор

У відповідності із синтаксисом ініціалізатора, наявність якого обов’язкове, визначення посилання може бути таким:

type&ім’я_посилання=вираз; або type&ім’я_посилання(вираз);

При визначенні посилання обов’язковою є його ініціалізація. Однак в опису посилань ініціалізація не обов’язкова. До таких описів посилань відносяться:

а) опис зовнішніх посилань (через специфікатор extern):

float& ref; //Помилка – немає ініціалізації

extern float& ref2; //Допустимо – ініціалізується

//в іншому блоці;

б) опис компонентів класу;

в) описи (специфікації) формальних параметрів функції;

г) опис типу значення, що повертається функцією.

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




Переглядів: 1163

<== попередня сторінка | наступна сторінка ==>
Основні теоретичні відомості | Перевантаження функцій

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

 

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.004 сек.