123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358 |
- #include "Array.h"
- using namespace Framework;
- // Inhalt der IntArray Klasse aus Array.h
- // Konstruktor
- IntArray::IntArray()
- {
- This = 0;
- next = 0;
- }
- // Destruktor
- IntArray::~IntArray()
- {
- if( next )
- delete next;
- }
- // nicht constant
- void IntArray::addInt( int i, int index, int null ) // fügt i bei endex ein
- {
- if( index == null )
- {
- IntArray *tmp = next;
- next = new IntArray();
- next->setNext( tmp );
- next->setInt( This, 0, 0 );
- This = i;
- return;
- }
- if( !next )
- next = new IntArray();
- next->addInt( i, index, null + 1 );
- }
- void IntArray::addInt( int i ) // fügt i hinzu
- {
- if( !next )
- {
- next = new IntArray();
- next->setInt( i, 0, 0 );
- return;
- }
- next->addInt( i );
- }
- void IntArray::setInt( int i, int index, int null ) // setzt das index - te int zu i
- {
- if( index == null )
- {
- This = i;
- return;
- }
- if( !next )
- next = new IntArray();
- next->setInt( i, index, null + 1 );
- }
- void IntArray::löscheInt( int index, int null ) // löscht das index - te int
- {
- if( index == null )
- {
- This = 0;
- if( next )
- {
- This = next->zThis();
- IntArray *tmp = next->zNext();
- next->setNext( 0 );
- delete next;
- next = tmp;
- }
- return;
- }
- if( !next )
- next = new IntArray();
- next->löscheInt( index, null + 1 );
- }
- void IntArray::tauschInt( int vindex, int nindex ) // löscht das index - te int
- {
- int tmp = getInt( nindex, 0 );
- setInt( getInt( vindex, 0 ), nindex, 0 );
- setInt( tmp, vindex, 0 );
- }
- void IntArray::setNext( IntArray *n ) // setzt den next Zeiger auf n
- {
- next = n;
- }
- int IntArray::getInt( int index, int null ) // gibt das index - te int zurück
- {
- if( index == null )
- return This;
- if( !next )
- next = new IntArray();
- return next->getInt( index, null + 1 );
- }
- void IntArray::deleteAll() // gibt den Speicher frei
- {
- This = 0;
- if( next )
- next->deleteAll();
- delete next;
- next = 0;
- }
- IntArray *IntArray::release() // gibt den Speicher frei
- {
- This = 0;
- if( next )
- next = next->release();
- delete this;
- return 0;
- }
- // constant
- int IntArray::zThis() const // gibt This zurück
- {
- return This;
- }
- IntArray *IntArray::zNext() const // gibt den next Zeiger zurück
- {
- return next;
- }
- // Inhalt der Int64Array Klasse aus Array.h
- // Konstruktor
- Int64Array::Int64Array()
- {
- This = 0;
- next = 0;
- }
- // Destruktor
- Int64Array::~Int64Array()
- {
- if( next )
- delete next;
- }
- // nicht constant
- void Int64Array::addInt( __int64 i, int index, int null ) // fügt i bei endex ein
- {
- if( index == null )
- {
- Int64Array *tmp = next;
- next = new Int64Array();
- next->setNext( tmp );
- next->setInt( This, 0, 0 );
- This = i;
- return;
- }
- if( !next )
- next = new Int64Array();
- next->addInt( i, index, null + 1 );
- }
- void Int64Array::setInt( __int64 i, int index, int null ) // setzt das index - te int zu i
- {
- if( index == null )
- {
- This = i;
- return;
- }
- if( !next )
- next = new Int64Array();
- next->setInt( i, index, null + 1 );
- }
- void Int64Array::löscheInt( int index, int null ) // löscht das index - te int
- {
- if( index == null )
- {
- This = 0;
- if( next )
- {
- This = next->zThis();
- Int64Array *tmp = next->zNext();
- next->setNext( 0 );
- delete next;
- next = tmp;
- }
- return;
- }
- if( !next )
- next = new Int64Array();
- next->löscheInt( index, null + 1 );
- }
- void Int64Array::tauschInt( int vindex, int nindex ) // löscht das index - te int
- {
- __int64 tmp = getInt( nindex, 0 );
- setInt( getInt( vindex, 0 ), nindex, 0 );
- setInt( tmp, vindex, 0 );
- }
- void Int64Array::setNext( Int64Array *n ) // setzt den next Zeiger auf n
- {
- next = n;
- }
- __int64 Int64Array::getInt( int index, int null ) // gibt das index - te int zurück
- {
- if( index == null )
- return This;
- if( !next )
- next = new Int64Array();
- return next->getInt( index, null + 1 );
- }
- void Int64Array::deleteAll() // gibt den Speicher frei
- {
- This = 0;
- if( next )
- next->deleteAll();
- delete next;
- next = 0;
- }
- Int64Array *Int64Array::release() // gibt den Speicher frei
- {
- if( This )
- This = 0;
- if( next )
- next = next->release();
- delete this;
- return 0;
- }
- // constant
- __int64 Int64Array::zThis() const // gibt This zurück
- {
- return This;
- }
- Int64Array *Int64Array::zNext() const // gibt den next Zeiger zurück
- {
- return next;
- }
- // Inhalt der DoubleArray Klasse aus Array.h
- // Konstruktor
- DoubleArray::DoubleArray()
- {
- This = 0;
- next = 0;
- }
- // Destruktor
- DoubleArray::~DoubleArray()
- {
- if( next )
- delete next;
- }
- // nicht constant
- void DoubleArray::addDouble( double i, int index, int null ) // fügt i bei endex ein
- {
- if( index == null )
- {
- DoubleArray *tmp = next;
- next = new DoubleArray();
- next->setNext( tmp );
- next->setDouble( This, 0, 0 );
- This = i;
- return;
- }
- if( !next )
- next = new DoubleArray();
- next->addDouble( i, index, null + 1 );
- }
- void DoubleArray::setDouble( double i, int index, int null ) // setzt das index - te int zu i
- {
- if( index == null )
- {
- This = i;
- return;
- }
- if( !next )
- next = new DoubleArray();
- next->setDouble( i, index, null + 1 );
- }
- void DoubleArray::löscheDouble( int index, int null ) // löscht das index - te int
- {
- if( index == null )
- {
- This = 0;
- if( next )
- {
- This = next->zThis();
- DoubleArray *tmp = next->zNext();
- next->setNext( 0 );
- delete next;
- next = tmp;
- }
- return;
- }
- if( !next )
- next = new DoubleArray();
- next->löscheDouble( index, null + 1 );
- }
- void DoubleArray::tauschDouble( int vindex, int nindex ) // löscht das index - te int
- {
- double tmp = getDouble( nindex, 0 );
- setDouble( getDouble( vindex, 0 ), nindex, 0 );
- setDouble( tmp, vindex, 0 );
- }
- void DoubleArray::setNext( DoubleArray *n ) // setzt den next Zeiger auf n
- {
- next = n;
- }
- double DoubleArray::getDouble( int index, int null ) // gibt das index - te int zurück
- {
- if( index == null )
- return This;
- if( !next )
- next = new DoubleArray();
- return next->getDouble( index, null + 1 );
- }
- void DoubleArray::deleteAll() // gibt den Speicher frei
- {
- This = 0;
- if( next )
- next->deleteAll();
- delete next;
- next = 0;
- }
- DoubleArray *DoubleArray::release() // gibt den Speicher frei
- {
- if( This )
- This = 0;
- if( next )
- next = next->release();
- delete this;
- return 0;
- }
- // constant
- double DoubleArray::zThis() const // gibt This zurück
- {
- return This;
- }
- DoubleArray *DoubleArray::zNext() const // gibt den next Zeiger zurück
- {
- return next;
- }
|