Я работаю над классом для существующей основной программы, и он создает ошибку segfault в строке delete []
.Я не совсем уверен, почему он это делает.Я попросил профессора, и мне сказали перечитать раздел о том, как искажаются указатели.Любая помощь будет оценена!Соответствующий код приведен ниже.
Из основного:
Point* v = new Point[nVertices];
for (int i = 0; i < nVertices; ++i)
in >> v[i].x >> v[i].y;
Asteroid aster1 (nVertices, v);
delete [] v;
Раздел класса для конструктора астероида:
Asteroid::Asteroid(int nVertices, Point vertexPoints[]){
numVertices = nVertices;
for (int i = 0; i < numVertices; i++){
vertices[i] = vertexPoints[i];
}
}
И раздел .h, если это важно:
class Asteroid{
int numVertices;
Point vertices[];
public:
//Attributes
Asteroid (int,Point*);