Defining Class BitVector - 3: Extra Goodies
namespace fsu
{
class BitVector
{
public:
...
size_t Size () const; // return number of bits of bitvector
void Expand (size_t newsize); // increase number of bits, retaining current values
void Dump (std::ostream& os) const; // developer / tester assistant
// syntactic sugar
bool operator[] (size_t i) const { return Test(i); } // same function as Test(i)
...
};
// handy operators
std::ostream& operator<< (std::ostream&, const BitVector&);
bool operator== (const BitVector& v1 , const BitVector& v2);
bool operator!= (const BitVector& v1 , const BitVector& v2);
} // namespace fsu
|