จุดตัดของสองชุดเกิดขึ้นจากองค์ประกอบที่มีอยู่ทั่วไปในทั้งสองชุดเท่านั้น องค์ประกอบที่คัดลอกโดยฟังก์ชันจะมาจากชุดแรกในลำดับเดียวกันเสมอ ส่วนประกอบในทั้งสองชุดจะถูกจัดเรียงแล้ว
การดำเนินการชุดทั่วไปคือ -
- ตั้งสหภาพ
- กำหนดทางแยก
- ส่วนต่างชุดสมมาตรหรือเอกสิทธิ์-OR
- กำหนดส่วนต่างหรือการลบ

อัลกอริทึม
Begin Declare set vector v and iterator st. Initialize st = set_intersection (set1, set1 + n, set2, set2 +n, v.begin())) Print the intersection between two sets. End.
โค้ดตัวอย่าง
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main () {
int set1[] = {5,6,7,8,9,10};
int set2[] = {1,2,3,4,6,7};
vector<int> v(10);
vector<int>::iterator st;
sort (set1, set1 + 6);
sort (set2, set2 + 6);
st = set_intersection (set1, set1 + 6, set2, set2 + 6, v.begin());
v.resize(st - v.begin());
cout << "The intersection between the two set has " << (v.size()) << " elements: "<<endl;
for (st = v.begin(); st != v.end(); ++st)
cout<< *st<<" ";
cout <<endl;
return 0;
} ผลลัพธ์
The intersection between the two set has 2 elements: 6 7