This is vector.h in view mode; [Download] [Up]
#ifndef VECTORH #define VECTORH #include "complex.h" class vector { double* v; int n; public: vector(){ n=0; v=0; } vector(const double x) { v = new double[n=1]; v[0]=x; } vector(double x0, double x1) { v = new double[n=2]; v[0]=x0; v[1]=x1; } ~vector(){ delete[] v; } vector( const vector& ); vector& operator=( const vector& ); int size() const { return n; } void set_size(int); void initialize(); void change_size(int); double& operator[](int i) const { return v[i]; } void set_small_to_zero( double tol ); }; ostream& operator<<( ostream&, const vector& ); istream& operator>>( istream&, vector& ); class cxVector { complex* v; int n; public: cxVector(){ n=0; v=0; } cxVector(const complex x) { v = new complex[n=1]; v[0]=x; } cxVector(complex x0, complex x1) { v = new complex[n=2]; v[0]=x0; v[1]=x1; } // cxVector( complex, complex, ... ) // WOULD BE NICE // friend cxVector operator,( cxVector& ); // WOULD BE NICE TOO cxVector( cxVector&, cxVector& ); // cxVector( cxVector&, cxVector&, ... ); // WOULD BE NICE TOO ~cxVector(){ delete[] v; } cxVector( const cxVector&); cxVector& operator=( const cxVector& ); int size() const { return n; } void set_size(int); void change_size(int); void reverse(); complex& operator[](int i) const { return v[i]; } void set_small_to_zero( double tol ); }; ostream& operator<<( ostream&, const cxVector& ); istream& operator>>( istream&, cxVector& ); #endif
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.