Cpp-д emplace гэж юу вэ?

Агуулгын хүснэгт:

Cpp-д emplace гэж юу вэ?
Cpp-д emplace гэж юу вэ?

Видео: Cpp-д emplace гэж юу вэ?

Видео: Cpp-д emplace гэж юу вэ?
Видео: Как сделать потрясающий массаж【5 точек массажа от чемпиона мира по массажу】 2024, Арваннэгдүгээр
Anonim

Вектор::emplace нь C++ хэл дээрх STL бөгөөдбайрлалд шинэ элемент оруулах замаар савыг өргөтгөдөг. Дахин хуваарилалт нь илүү их зай шаардлагатай тохиолдолд л хийгддэг. Энд савны хэмжээ нэгээр нэмэгдэнэ.

Emplace функцийг юунд ашигладаг вэ?

C++ set emplace функцийг саванд шинэ элемент оруулах замаар багцын савыг сунгахад ашигладаг. Элементүүдийг шууд бүтээдэг (хуулаагүй, зөөгөөгүй). Элементийн үүсгэгчийг энэ функцэд дамжуулсан аргументуудыг аргумент болгон дууддаг.

Вектор emplace юу хийдэг вэ?

vector::emplace

Контейнерд -ийн өмнө шууд шинэ элемент оруулна. Элементийг std::allocator_traits::construct-оор бүтээдэг бөгөөд энэ нь ихэвчлэн байрлуулалт-new-г ашиглан элементийг савнаас заасан байршилд байрлуулдаг.

Дараалалд юу байршуулах вэ?

queue::emplace нь дарааллын саванд шинэ элемент оруулах эсвэл оруулахад хэрэглэгддэг Дарааллын бүтцийн функц нь бүтцийн төгсгөлд элемент оруулах явдал юм., байршуулахын тулд дарааллын контейнерийн төгсгөлд элементийг амжилттай оруулахын тулд emplace_back дуудна.

Эмплас болон түлхэх хоёрын ялгаа юу вэ?

Түлхэх функц нь утгын хуулбарыг эсвэл функцэд дамжуулсан параметрийг дээд талд байгаа саванд оруулах бол emplace функц нь параметрийн утга болгон шинэ элемент байгуулж, дараа нь үүнийг дээд талд нэмнэ. сав.

Зөвлөмж болгож буй: