| | | | | |

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

| | Top of Page | 7. A BitVector Class - 6 of 14