Salve a tutti .. sto esercitandomi su template .. classi etc ..
provando a fare un semplice caso di template di classe con tipo paramentrico e tipo non paramentrico riscontro un errore che da debug risulta essere nell'distruttore
il codice e` il seguente
codice:
#include<iostream>
#include<iomanip>
#include<cstdlib>
using namespace std;
template< typename T , int N >
class Array{
public:
Array( float = 0.0 );
~Array();
void initialize( float );
// void setArray(N);
private:
T* arrayPtr ;
int size ;
};
template<typename T, int N>
Array<T,N>::Array( float value)
: size( N > 0 ? N : 1 ),
arrayPtr( new T[size] )
{
initialize( value );
}
template<typename T, int N>
Array<T,N>::~Array()
{
delete[] arrayPtr;
}
template<typename T, int N>
void Array<T,N>::initialize( float v )
{
for(int i=0 ; i < size ; i++) arrayPtr[i] = v ;
}
int main(){
Array<float , 100 > A(0.2) ;
system("echo 'pause'");
return 0 ;
}