Tôi có một chương trình rất đơn giản được viết để xác định toán tử * trong một lớp mẫu mảng. Khi tôi cố gắng biên dịch nó cho tôi một lỗi "bất hợp pháp bất hợp pháp". Bất kỳ trợ giúp nào về vấn đề này sẽ được đánh giá cao!Lỗi C2100 - Indirection bất hợp pháp
Đây là định nghĩa điều hành:
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;
}
Và đây là việc thực hiện trong hàm main kiểm tra:
cout<<((*intArray1)*5).GetElement(0);
cout<<((*intArray1)*5).GetElement(1);
cout<<((*intArray1)*5).GetElement(2);
Bất kỳ ý tưởng?