#pragma once template< class type > class tenlist { public: int nVal; int mVal; type* lVal; inline tenlist() { mVal = 0; nVal = 0; lVal = 0; //zero everything since we well over-zero it anyway } inline ~tenlist() { free( lVal ); } inline int size() { return nVal; } inline void Add( type t ) { if( nVal+1 >= mVal ) { mVal += 8; lVal = (type*)realloc( lVal, sizeof(type)*mVal ); memset( lVal+nVal, 0x00, sizeof(type)*(mVal-nVal) ); //lVal+nVal, since it'll be multiplied by sizeof(type) due to lVal being a type* } lVal[nVal++] = t; } inline void AddStr( type t ) { if( nVal+1 >= mVal ) { mVal += 8; lVal = (type*)realloc( lVal, sizeof(type)*mVal ); memset( lVal+nVal, 0x00, sizeof(type)*(mVal-nVal) ); //lVal+nVal, since it'll be multiplied by sizeof(type) due to lVal being a type* } strcpy( lVal[nVal++], t ); } inline void Rem( int n ) { if( n>=nVal ) { nVal = 0; return; } for( int i=0;i