The following declares a C++ class template int_set< int From, int To >
that uses bitset STL to compute operations on sets of integers using bitset STL bitwise operators. int_set< int From, int To >
is a class of objects that represent subsets of universal domain U = [ From, To ].
Each object stores the membership function of the corresponding subset using a private bitset<N>
member exists, where N = ( To - From + 1 )
, and can be updated using set insertion/deletion operations.
The main advantage of int_set< int From, int To >
is that the set insertion/deletion operations as well as the fundamental set union, intersection, complement, difference, and symmetric difference operations are implemented using the standard C++ bitset STL bitwise operators, unlike the corresponding set STL operations that require adding/deleting elements to/from the binary tree representation of the set, which improves the performance of those operations.