§ 11. Структураваны тып даных масіў

11.2. Апісанне масіваў

Мы будзем разглядаць работу з масівам, выкарыстоўваючы тып даных vector, рэалізаваны ў стандартнай бібліятэцы. Гэты тып даных, як і ўжо знаёмы вам тып даных string, з’яўляецца шаблонным класам, таму шмат якія каманды для работы будуць аднолькавымі.

Для работы з тыпам даных vector неабходна падключыць аднайменную бібліятэку:

#include <vector>

Для стварэння вектара выкарыстоўваецца наступная каманда:

vector <тып элементаў> імя_масіву (колькасць элементаў);

Імя масіву з’яўляецца ідэнтыфікатарам і задаецца па тых жа правілах, што і імёны любых іншых пераменных.

Тып элементаў задае значэнне базавага тыпу для дадзенага масіву. Базавы тып можа быць любым з вядомых вам тыпаў (прыклады 11.5–11.7).

Памер масіву — колькасць элементаў у ім.

Усе элементы вектара пасля апісання атрымліваюць значэнне нуля. Калі неабходна іншае значэнне, яго можна паказаць другім параметрам (прыклад 11.8).

Паняцце вектара шырока ўжываецца ў фізіцы і матэматыцы. Так, напрыклад, у фізіцы вектар разглядаецца як структура, якая мае адначасова велічыню (модуль) і напрамак. Шматмерныя вектары выкарыстоўваюцца ў квантавай механіцы. У геаметрыі пад вектарамі разумеюць накіраваныя адрэзкі. Арыфметычным вектарам называюць упарадкаваную сукупнасць з n лікаў. Вектар можа разглядацца як паслядоўнасць (картэж) аднародных элементаў. Менавіта ў такім выглядзе вектар разумеецца ў праграміраванні.

Прыклад 11.5. Апішам масіў, разгледжаны ў прыкладзе 11.1. Памер апісанага масіву 25 элементаў.

   vector <int> a(25);    

Прыклад 11.6. Апішам масіў, разгледжаны ў прыкладзе 11.2. Памер апісанага масіву — 31 элемент.

  vector <double> t(31);  

Прыклад 11.7. Апішам масіў, разгледжаны ў прыкладзе 11.3.

  vector <string> s(27);  

Прыклад 11.8. Апішам масіў, усім элементам якога спачатку прысвойваецца значэнне –1:

  vector <int> a(25, -1);