Vektorius::emplace yra STL C++, kuris išplečia konteinerį įterpdamas naują elementą į poziciją. Perskirstymas vyksta tik tada, kai reikia daugiau vietos. Čia konteinerio dydis padidėja vienu.
Kam naudojama emplace funkcija?
C++ set emplace funkcija naudojama išplėsti rinkinio konteinerį įterpiant naujus elementus į konteinerį. Elementai statomi tiesiogiai (nei kopijuojami, nei perkeliami). Elemento konstruktorius iškviečiamas pateikiant šiai funkcijai perduodamus argumentus args.
Ką veikia Vector emplace?
vector::emplace
Įterpia naują elementą į konteinerį tiesiai prieš pozą. Elementas konstruojamas naudojant std::allocator_traits::construct, kuris paprastai naudoja placement-new, kad elementas būtų sukurtas vietoje konteinerio nurodytoje vietoje.
Kas yra eilėje?
queue::emplace yra naudojamas naujam elementui įterpti arba įdėti į eilės konteinerį Kadangi eilės struktūros funkcionalumas yra tas, kad elementas įterpiamas į struktūros pabaigą, emplace iškviečia emplace_back, kad elementas būtų sėkmingai įterptas į eilės konteinerio pabaigą.
Kuo skiriasi emplace ir push?
Kol funkcija „push“įterpia reikšmės arba funkcijai perduoto parametro kopiją į viršuje esantį konteinerį, funkcija emplace sukuria naują elementą kaip parametro reikšmę ir tada prideda jį prie puslapio viršaus. konteineris.