რა არის emplace cpp-ში?

Სარჩევი:

რა არის emplace cpp-ში?
რა არის emplace cpp-ში?

ვიდეო: რა არის emplace cpp-ში?

ვიდეო: რა არის emplace cpp-ში?
ვიდეო: Emplace In C++ 2024, ნოემბერი
Anonim

ვექტორი::emplace არის STL C++-ში, რომელიც აფართოებს კონტეინერს ახალი ელემენტის ჩასმით პოზიციაზე. გადანაწილება ხდება მხოლოდ იმ შემთხვევაში, თუ საჭიროა მეტი სივრცე. აქ კონტეინერის ზომა იზრდება ერთით.

რისთვის გამოიყენება emplace ფუნქცია?

C++ set emplace ფუნქცია გამოიყენება ნაკრების კონტეინერის გასაგრძელებლად კონტეინერში ახალი ელემენტების ჩასმით. ელემენტები აგებულია პირდაპირ (არც კოპირდება და არც გადატანილია). ელემენტის კონსტრუქტორი გამოიძახება ამ ფუნქციისთვის გადაცემული არგუმენტების მიცემით.

რას აკეთებს Vector emplace?

ვექტორი::emplace

ახალი ელემენტის ჩასმა კონტეინერში პირდაპირ pos-მდე. ელემენტი აგებულია std::allocator_traits::construct-ის მეშვეობით, რომელიც ჩვეულებრივ იყენებს placement-new-ს ელემენტის ადგილზე ასაგებად კონტეინერის მიერ მითითებულ ადგილას.

რა არის emplace რიგში?

queue::emplace არის გამოიყენება რიგის კონტეინერში ახალი ელემენტის ჩასართავად ან ჩასართავად როგორც რიგის სტრუქტურის ფუნქციონირება არის ის, რომ ელემენტი ჩასმულია სტრუქტურის ბოლოს., to emplace რეკავს emplace_back ელემენტის წარმატებით ჩასართავად რიგის კონტეინერის ბოლოს.

რა განსხვავებაა emplace-სა და push-ს შორის?

მიუხედავად იმისა, რომ push ფუნქცია ჩასვამს ფუნქციისთვის გადაცემული მნიშვნელობის ან პარამეტრის ასლს ზედა კონტეინერში, emplace ფუნქცია აყალიბებს ახალ ელემენტს პარამეტრის მნიშვნელობად და შემდეგ ამატებს მას ზედა ნაწილში. კონტეინერი.

გირჩევთ: