Error C2100 - Illegal Indirection

Habe ich ein sehr einfaches Programm geschrieben, um zu definieren, ein operator * in ein array template-Klasse.
Wenn ich versuche zu kompilieren, es gibt mir eine Fehlermeldung "illegal indirection".
Jede Hilfe in der Angelegenheit würde sehr geschätzt werden!

Dies ist der operator definition:

template <typename T>                                                                   
NumericArray<T> NumericArray<T>::operator * (const int factor) const
{
NumericArray<T>* TempArray2 = new NumericArray<T>(Size());
for (int i=0; i<Size(); i++)
{
    *TempArray2[i] = ((GetElement(i))*(factor));
}
return *TempArray2;
}

Ist und diese Umsetzung in der test-main-Funktion:

cout<<((*intArray1)*5).GetElement(0);                                   
cout<<((*intArray1)*5).GetElement(1);
cout<<((*intArray1)*5).GetElement(2);

Irgendwelche Ideen?

InformationsquelleAutor Byron | 2013-04-22
Schreibe einen Kommentar