unordered_multimap operator = в C ++ STL
Опубликовано: 30 Декабря, 2021
'=' - это оператор в C ++ STL, который копирует (или перемещает) unordered_multimap на другой unordered_multimap, а unordered_multimap :: operator = - соответствующая операторная функция. Есть три версии этой функции.
- Первая версия принимает ссылку на unordered_multimap в качестве аргумента и копирует его в unordered_multimap.
- Вторая версия выполняет назначение перемещения, то есть перемещает содержимое unordered_multimap на другую unordered_multimap.
- Третья версия назначает содержимое списка инициализаторов unordered_multimap.
Синтаксис:
umm.operator = (unordered_multimap & ммм) umm.operator = (unordered_multimap && ммм) umm.operator = (список инициализаторов)
Параметры:
- Первая версия принимает в качестве аргумента ссылку на unordered_multimap.
- Вторая версия принимает в качестве аргумента ссылку на r-значение unordered_multimap.
- Третья версия принимает в качестве аргумента список инициализаторов.
Возвращаемое значение: Все они возвращают значение этого указателя (* this).
Программа ниже иллюстрирует unordered_multimap :: operator = в C ++.
Пример
// C++ code to illustrate the method // unordered_multimap::operator=() #include <bits/stdc++.h> using namespace std; // merge function template < class T> T merge(T a, T b) { T t(a); t.insert(b.begin(), b.end()); return t; } int main() { unordered_multimap< int , int > sample1, sample2, sample3; // List initialization sample1 = { { 1, 2 }, { 3, 4 }, { 5, 6 } }; sample2 = { { 7, 8 }, { 9, 10 }, { 11, 12 } }; // Merge both lists sample3 = merge(sample1, sample2); // copy assignment sample1 = sample3; // Print the unordered_multimap list for ( auto & it : sample1) cout << it.first << " : " << it.second << endl; cout << endl; for ( auto & it : sample2) cout << it.first << " : " << it.second << endl; cout << endl; for ( auto & it : sample3) cout << it.first << " : " << it.second << endl; return 0; } |
Выход:
7: 8 9: 10 11: 12 1: 2 3: 4 5: 6 11: 12 9: 10 7: 8 7: 8 9: 10 11: 12 1: 2 3: 4 5: 6
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .