Hello I have a class that has an overloaded operator:
class ObjectModel
{
public:
ObjectModel();
ObjectModel(string file);
~ObjectModel();
ObjectModel& operator=(const ObjectModel &a)
{
NumVertex = a.NumVertex;
NumNormal = a.NumNormal;
NumTexCoord = a.NumTexCoord;
NumTriangle = a.NumTriangle;
VertexArray = a.VertexArray;
NormalArray = a.NormalArray;
TexCoordArray = a.TexCoordArray;
TriangleArray = a.TriangleArray;
Filename = a.Filename;
return *this;
}
int NumVertex;
int NumNormal;
int NumTexCoord;
int NumTriangle;
ObjectVertex *VertexArray;
ObjectNormal *NormalArray;
ObjectTexCoord *TexCoordArray;
ObjectTriangle *TriangleArray;
string *Filename;
};
However, it is not working later when it is called:
ObjectLoader::ObjectLoader(int objects)
{
ObjectArray = new ObjectModel[objects];
for(int a=0; a < objects; a++)
{
ObjectArray[a] = NULL; //Here
}
}
//and
...
void ObjectLoader::LoadObject(int index)
{
if(ObjectArray[index] != NULL) FreeObject(index); //Here
ObjectArray[index] = new ObjectModel; //Here
ReadData(index);
}
Can someone help me weed out this problem?
Thanks.