Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++ STL에서 연산자 =설정

<시간/>

operator=함수는 집합에서 하나의 집합을 복사하는 데 사용됩니다(또는 C++ STL에서 다른 집합으로 이동합니다. 집합에 대한 일반적인 '=' 할당 작업으로 작동합니다. 이 함수의 오버로드된 형식이 있습니다 -

  • 복사:- set&operator=(const set&s1) -

    이 함수는 집합 s1의 모든 요소를 ​​다른 집합으로 복사합니다. 전달된 매개변수는 동일한 유형으로 설정됩니다.

  • 사용법 - s1=s2;

    설정
  • 이동 :- set&operator=( set &&s1 ) -

    이렇게 하면 집합 s1의 요소가 호출 집합으로 이동합니다.

  • 초기화 목록:- set&operator=(initializer_list ilist) -

    이 버전은 이니셜라이저 목록 ilist의 값을 호출 세트로 복사합니다.

    사용법 - set s1={ 1,2,3,4,5 };

참고 - 모두 set 유형의 이 포인터에 대한 참조를 반환합니다.

다음 프로그램은 C++ 프로그램에서 라운드 함수의 사용법을 보여주기 위해 사용됩니다 -

#include <iostream>
#include <set>
using namespace std;
// merge function
int main(){
   set<int> set1, set2;
   // List initialization
   set1 = { 1, 2, 3, 4, 5 };
   set2 = { 10,11,12,13 };
   // before copy
   cout<<"set1 :";
   for (auto s = set1.begin(); s != set1.end(); ++s) {
      cout << *s << " ";
   }
   cout << endl;
   cout<<"set2 :";
   for (auto s = set2.begin(); s != set2.end(); ++s) {
      cout << *s << " ";
   }
   //after copy set1 to set2
   cout<<endl<<"After Copy"<<endl;
   cout<<"set1 :";
   set1=set2;
   for (auto s = set1.begin(); s != set1.end(); ++s) {
      cout << *s << " ";
   }
   return 0;
}

출력

set1 :1 2 3 4 5
set2 :10 11 12 13
After Copy
set1 :10 11 12 13