Stavo cercando di fare una classe template per la gestione di matrici e sono inceppato in questo problema.
Il codice è questo:
Ed il compilatore sulla riga incriminata mi segna:codice:matrix<class Type>::matrix() { // Inizializza il numero massimo di dimensioni maxdim = 30; // Parte con una sola dimensione dimnum = 1; // Alloca la memoria per contenere il numero di elementi // delle varie dimensioni dimensioni = new int[maxdim]; // La prima dimensione ha un elemento dimensioni[0] = 1; // Alloca lo spazio per i dati dati = new Type [totelem()]; }
error C2512: 'Type' : no appropriate default constructor available
la funzione totelem() restituisce un intero che specifica il numero totale degli elementi della matrice.
dati è un puntatore al tipo template "Type"
Come faccio allora ad allocare lo spazio per n elementi di tipo Type?