Mis on emplace cpp-s?

Sisukord:

Mis on emplace cpp-s?
Mis on emplace cpp-s?

Video: Mis on emplace cpp-s?

Video: Mis on emplace cpp-s?
Video: 20. Внутреннее устройство list, map, unordered_map 2024, November
Anonim

Vektor::emplace on STL keeles C++, mis laiendab konteinerit, lisades uue elemendi positsiooni. Ümberjaotamine toimub ainult siis, kui on vaja rohkem ruumi. Siin suureneb konteineri suurus ühe võrra.

Mille jaoks kasutatakse funktsiooni emplace?

C++ set emplace funktsiooni kasutatakse komplekti konteineri laiendamiseks, lisades konteinerisse uusi elemente. Elemendid ehitatakse otse (ei kopeerita ega teisaldata). Elemendi konstruktori kutsumiseks antakse sellele funktsioonile edastatud argumendid.

Mida Vector emplace teeb?

vector::emplace

Lisab uue elemendi konteinerisse vahetult enne positsiooni. Element konstrueeritakse läbi std::allocator_traits::construct, mis tavaliselt kasutab paigutus-new elemendi konstrueerimiseks konteineri pakutavas kohas.

Mis on emplace järjekorras?

queue::emplace on kasutatakse järjekorrakonteinerisse uue elemendi lisamiseks või paigutamiseks Kuna järjekorra struktuuri funktsionaalsus seisneb selles, et element sisestatakse struktuuri lõppu, emplace kutsub emplace_back elemendi edukaks sisestamiseks järjekorra konteineri lõppu.

Mis vahe on emplace'il ja pushil?

Kui funktsioon push lisab funktsioonile edastatud väärtuse või parameetri koopia ülaosas olevasse konteinerisse, konstrueerib funktsioon emplace parameetri väärtuseks uue elemendi ja lisab selle seejärel parameetri ülaossa. konteiner.

Soovitan: