Діапазон (програмування)

В інформатиці термін діапазон може стосуватися однієї з трьох речей:[джерело?]

  1. Можливі значення, які можуть зберігатися в змінній.
  2. Верхня та нижня межі масиву.
  3. Альтернатива ітератору.

Діапазон змінної ред.

Діапазон змінної задається як набір можливих значень, які ця змінна може містити. У випадку цілого числа визначення змінної обмежується лише цілими числами, а діапазон охоплює кожне число в межах діапазону (включно з максимальним і мінімальним). Наприклад, діапазон 16-бітної цілочисельної змінної зі знаком − це всі цілі числа від −32 768 до +32 767.

Діапазон масиву ред.

Коли масив має числовий індекс, його діапазон є верхньою та нижньою межею масиву. Залежно від середовища, якщо програма спробує отримати доступ до елемента масиву, який знаходиться за межами діапазону, виникне попередження, фатальний виняток або непередбачувана поведінка. У деяких мовах програмування, таких як C, масиви мають фіксовану нижню межу (нуль) і міститимуть дані в кожній позиції аж до верхньої межі (тому масив із 5 елементів матиме діапазон від 0 до 4). В інших, таких як PHP, масив може мати діри, де не визначено жодного елемента, і тому масив із діапазоном від 0 до 4 матиме до 5 елементів (і мінімум 2).

Діапазон як альтернатива ітератору ред.

Іншим значенням діапазону в інформатиці є альтернатива — ітератор. При використанні в цьому значенні діапазон визначається як «пара початкових/кінцевих ітераторів, упакованих разом».[1] Стверджується[1], що «Діапазони є кращою абстракцією» (порівняно з ітераторами) з кількох причин, включаючи кращу безпеку.

Зокрема, такі діапазони підтримуються в Boost C++ Libraries[2] і стандартній бібліотеці D.[3]

Див. також ред.

Примітки ред.

  1. а б Andrei Alexandrescu (6 травня 2009). Iterators Must Go (PDF). BoostCon 2009. Процитовано 29 липня 2014.
  2. Boost.Range documentation
  3. D Phobos Runtime Library std.range module