// vector.h - Declaración de la clase CVector
#if !defined( _VECTOR_H_ )
#define _VECTOR_H_

class CVector
{
  friend void fnVisualizar(const CVector& vector);
  private:
    double *vector;  // puntero al primer elemento de la matriz
    int nElementos;  // número de elementos de la MATRIZ
  protected:
    double *asignarMem(int);
    static void *asignarMem(size_t, char);
  public:
    CVector(); // crea un CVector con N de elementos por omisión
    CVector(int ne);         // crea un CVector con ne elementos
    CVector(double *, int);  // crea un CVector desde una matriz
    CVector(const CVector&); // crea un CVector desde otro
    ~CVector();              // destructor
    double& elemento(int i) const;
    int longitud() const;
    void *operator new(size_t);
    void *operator new[](size_t);
    void operator delete(void *, size_t);
    void operator delete[](void *, size_t);
};

#endif // _VECTOR_H_

