std::basic_stacktrace<Allocator>::swap
void swap( basic_stacktrace& other ) noexcept(/* see below */); |
(с C++23) |
Обменивает содержимое контейнера с содержимым other. Не вызывает никаких операций перемещения, копирования или обмена для отдельных stacktrace_entry объектов.
Все итераторы и ссылки остаются действительными. Итератор end() становится недействительным.
Если std::allocator_traits<allocator_type>::propagate_on_container_swap::value истинно, то аллокаторы обмениваются с помощью неквалифицированного вызова нечленной функции swap. В противном случае они не обмениваются (и если get_allocator() != other.get_allocator(), поведение не определено).
Параметры
| other | - | basic_stacktrace для обмена содержимым |
Возвращаемое значение
(ничего)
Исключение
noexcept спецификация: noexcept(std::allocator_traits<Allocator>::propagate_on_container_swap::value
|| std::allocator_traits<Allocator>::is_always_equal::value)Сложность
Постоянная.
Пример
См. также
|
(C++23) |
специализирует алгоритм std::swap (шаблон функции) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/utility/basic_stacktrace/swap