std::unordered_set::operator=
Материал из cppreference.com
< cpp | container | unordered set
![]() |
Эта страница была переведена автоматически с английской версии вики используя Переводчик Google.
Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке. Щёлкните здесь, чтобы увидеть английскую версию этой страницы |
unordered_set& operator=( const unordered_set& other ); |
(1) | (начиная с C++11) |
unordered_set& operator=( unordered_set&& other ); |
(2) | (начиная с C++11) |
Заменяет содержимое контейнера.
1) Оригинал:
Replaces the contents of the container.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Скопируйте оператор присваивания. Заменяет содержимое с копией содержимого
2) other
.Оригинал:
Copy assignment operator. Replaces the contents with a copy of the contents of
other
.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Переместите оператор присваивания. Заменяет содержимое с теми
other
использованием семантика переноса (т.е. данные в other
перемещается из other
в этот контейнер). other
находится в силе, но неопределенное состояние после.Оригинал:
Move assignment operator. Replaces the contents with those of
other
using move semantics (i.e. the data in other
is moved from other
into this container). other
is in valid, but unspecified state afterwards.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Содержание |
[править] Параметры
other | — | другой контейнер, который будет использоваться в качестве источника
Оригинал: another container to be used as source Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
[править] Возвращаемое значение
*this
[править] Сложность
1)Линейный в размер контейнера.
2) Оригинал:
Linear in the size of the container.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Постоянное.
Оригинал:
Constant.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
[править] Пример
Следующий код использует
, чтобы присвоить один std::unordered_set в другую
Оригинал:
The following code uses
to assign one std::unordered_set to another:
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Запустить этот код
#include <unordered_set> #include <iostream> void display_sizes(const std::unordered_set<int> &nums1, const std::unordered_set<int> &nums2, const std::unordered_set<int> &nums3) { std::cout << "nums1: " << nums1.size() << " nums2: " << nums2.size() << " nums3: " << nums3.size() << '\n'; } int main() { std::unordered_set<int> nums1 {3, 1, 4, 6, 5, 9}; std::unordered_set<int> nums2; std::unordered_set<int> nums3; std::cout << "Initially:\n"; display_sizes(nums1, nums2, nums3); // copy assignment copies data from nums1 to nums2 nums2 = nums1; std::cout << "After assigment:\n"; display_sizes(nums1, nums2, nums3); // move assignment moves data from nums1 to nums3, // modifying both nums1 and nums3 nums3 = std::move(nums1); std::cout << "After move assigment:\n"; display_sizes(nums1, nums2, nums3); }
Вывод:
Initially: nums1: 4 nums2: 0 nums3: 0 After assigment: nums1: 4 nums2: 4 nums3: 0 After move assigment: nums1: 0 nums2: 4 nums3: 4
[править] См. также
Создаёт unordered_set (public функция-член) |