Тема: Використання двовимірних динамічних масивів в класах
Всім привіт,вивчаю С++ на ООП в університеті.Зіткнувся з такою проблемою:мені потрібно створити двовимірний динамічний масив в класі і в нього потім вписати сторони трикутника. Масив я створив,дані вводяться і опрацьовуються, але при завершені роботи програми,компілятор повідомляє про помилку:HEAP CORRUPTION DETECTED:after normal block(#153)at ...
Сподіваюся хтось допоможе мені вирішити цю проблему.Буду вдячний за допомогу.
#define _USE_MATH_DEFINES
#include <iostream>
#include <math.h>
#include <stdlib.h>
class Triangle {
private:
int n;
int** sides;
double** eagles;
int* perimeter = new int[n];
double* area = new double[n];
public:
Triangle() {
std::cout << "Введіть кількість трикутників:";
std::cin >>n;
sides = new int* [n];
eagles = new double* [n];
for (int i = 0; i < n; i++) {
sides[i] = new int[3];
eagles[i] = new double[3];
}
}
int GetTriangle();
void ChangeData();
void PrintTriangleInfo();
void AnglesPerimeterAndArea();
~Triangle() {
delete[] perimeter;
delete[] area;
for (int i = 0; i < n; i++) {
delete[] sides[i];
delete[] eagles[i];
}
delete[] sides;
delete[] eagles;
std::cout << "\nСпрацював деструктор.\n";
}
};
int main(void) {
system("chcp 1251");
Triangle triangle;
triangle.GetTriangle();
triangle.AnglesPerimeterAndArea();
triangle.PrintTriangleInfo();
triangle.ChangeData();
return 0;
}