Я получаю странную ошибку времени выполнения, которую я просто не могу понять. Делаю объект моего класса Circle, который имеет следующий конструктор по умолчанию:Создание объекта внутри другого класса C++
Circle::Circle()
{
this->radius = 0;
this->center->setX(0);
this->center->setY(0);
}
Переменные, которые будучи инициализируются являются:
private:
double radius;
Point *center;
};
Когда я пытаюсь создать объект класс круга, я получаю ошибку времени выполнения. Теперь я получаю эту ошибку только тогда, когда объект Object object объявлен динамически. Что-то не так с моим синтаксисом? Когда я объявляю точку в моем классе Circle, как это вместо:
Point center;
И инициализирует его, как это вместо:
Circle::Circle()
{
this->radius = 0;
this->center.setX(0);
this->center.setY(0);
}
Он работает. Почему я получаю эти ошибки при создании объекта динамически? Могу ли я использовать два «->», как в первом примере?
Это мой первый пост, я надеюсь, что это не слишком глупый вопрос. Спасибо заранее.
Какие ошибки? И где вы создали «Точку»? –