template<class T> class BasicArray
{
public:
int n() const
{ return sze; }
BasicArray();
protected:
int sze;
T *x;
};
template<class T> class Vector : public BasicArray<T>
{
public:
int rows() const //!< a reference to the size of the vector
{ return sze ;}
Vector() : BasicArray<T>(1) {} //!< Basic constructor
virtual ~Vector() {}
}