С C ++ 17, вы можете напрямую использовать merge
функцию set
.
Это лучше, когда вы хотите, чтобы элементы set2 были извлечены и вставлены в set1 как часть слияния.
Как показано ниже:
set<int> set1{ 1, 2, 3 };
set<int> set2{ 1, 4, 5 };
// set1 has 1 2 3 set2 has 1 4 5
set1.merge(set2);
// set1 now has 1 2 3 4 5 set2 now has 1 (duplicates are left in the source, set2)