Toán tử hàm =được sử dụng trong các bộ để sao chép một bộ (hoặc di chuyển sang một bộ khác trong C ++ STL. Nó hoạt động như một hoạt động gán ‘=’ bình thường cho các bộ. Có những dạng quá tải của hàm này -
-
copy:- set &operator =(const set &s1) -
Hàm này sao chép tất cả các phần tử trong tập s1 sang một tập hợp khác. Tham số được truyền vào có cùng kiểu.
-
Cách sử dụng - đặt s1 =s2;
-
move:- set &operator =(set &&s1) -
Thao tác này sẽ di chuyển các phần tử của tập s1 vào tập gọi.
-
Danh sách trình khởi tạo:- set &operator =(initializer_list
ilist) -Phiên bản này sao chép các giá trị của ilist danh sách trình khởi tạo vào bộ gọi.
Cách sử dụng - set
s1 ={1,2,3,4,5};
Lưu ý - Tất cả chúng đều trả về tham chiếu của con trỏ thuộc loại tập hợp
Chương trình sau được sử dụng để chứng minh cách sử dụng hàm round trong chương trình C ++ -
Ví dụ
#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; }
Đầu ra
set1 :1 2 3 4 5 set2 :10 11 12 13 After Copy set1 :10 11 12 13