front
жəне
back
əдістері сəйкесінше вектордың алғашқы жəне
соңғы элементтеріне сілтемелер қайтарады (бұл
begin
мен
end
функцияла-
рымен бірдей емес,
begin
– алғашқы элементке нұсқауыш жəне
end
– соңғы
элементтен кейінгі элементке нұсқауыш). Мысал:
vector v(5, 10):
v.front() = 100; v.back() = 100;
cout << v[0] << " " << v[v.size() - 1];
// Нəтиже: 100 100
Вектор орналасатын жедел жады көлемін
capacity
функциясы анықтайды:
size_type capacity() const;
Векторға жады динамикалық түрде бөлінеді, бірақ əрбір уақыт мезетінде
бір элементке емес (бұл ресурсты артық жұмсау болып табылар еді), бірден
элементтер тобына бөлінеді, мысалы 256 немесе 1024. Жадыны қайта бөлу
элементтердің осы саннан артып кетуі кезінде ғана орындалады, мұндайда
бөлінген кеңістік көлемі екі еселенеді. Жады қайта бөлінгеннен кейін вектор
элементтеріне сілтеме жасайтын кез келген итераторлар жарамсыз болып та-
былады, өйткені вектор жадының басқа бөлігіне ауыстырылуы мүмкін жəне
онымен байланысқан сілтемелер автоматты түрде жаңартылады деп күтудің
қажеті жоқ.
Сонымен қатар, жадыны бөлетін
reserve
функциясы бар, ол векторды
сақтау үшін жадының қажетті көлемін тағайындауға мүмкіндік береді:
Достарыңызбен бөлісу: |