Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Динамический массив - ошибка на 4-ой итерации - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать класс для обработки информации об инструментах http://www.cyberforum.ru/cpp-beginners/thread694076.html
Только начали изучать классы. Немного недопонимаю я их. Задача: Создать класс для обработки информации об инструментах. Сведения об инструменте содержат название, размер, материал, из которого...
C++ Написать программу, выдающую список всех поступивших товаров с их количеством в порядке возрастания шифров Дан файл, содержащий информацию о поступлении товаров на склад. Структура записи файла: шифр товара, наименование товара, дата поступления, количество единиц товара. Записи в файле не... http://www.cyberforum.ru/cpp-beginners/thread694073.html
C++ Составить описание класса для определения одномерных массивов целых чисел( устранение ошибок)
Составить описание класса для определения одномерных массивов целых чисел (векторов). Предусмотреть возможность обращения к отдельному элементу массива с контролем выхода за пределы массива,...
Указатель на массив C++
Подскажите пожалуйста, как создать указатель на массив, если длина массива записана в переменной? Т.е проблема в том что в квадратных скобочках при определении массива должно стоять константное...
C++ Разложение матрицы А http://www.cyberforum.ru/cpp-beginners/thread694052.html
Всем доброй почти ночи! Работаю над алгоритмом разложения матрицы А на матрицы Q и R Пользуюсь данным алгоритмом И вот такой у меня вышел код: #include <stdio.h> #include <math.h> #define N...
C++ Наименьшее количество квадратов в прямоугольнике Дан прямоугольник размерностью NxM. Нужно заполнить его наименьшим количеством квадратов. Я погуглил на данную тему, но нигде не нашёл внятного решения. Собственно проблема не в самой реализации, а в... подробнее

Показать сообщение отдельно
ValeryS
Модератор
6682 / 5091 / 477
Регистрация: 14.02.2011
Сообщений: 17,092
10.11.2012, 21:11
во первых вот здесь
Цитата Сообщение от NEvOl Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
if (numstep == 1)
 {
 delete answers[0];
 }
 else
 {
 for(int i = 0; i < numstep - 1; i++)
 delete answers[i];
 delete answers;
 }
перепиши
C++
1
2
3
4
5
6
7
8
9
10
if (numstep == 1)
   {
      delete[] answers[0];
   }
   else
   {
      for(int i = 0; i < numstep; i++)
        delete[] answers[i];
    }
     delete[] answers;
у тебя не удаляется блок answers[numstep-1]( до него цикл не доходит)
если numstep == 1 то не удаляется answers
ну и удалять нужно массив как сказал Kuzia domovenok,
я бы написал так

C++
1
2
3
 for(int i = 0; i < numstep; i++)
        delete[] answers[i];
    delete[] answers;
во вторых вместо этого

Цитата Сообщение от NEvOl Посмотреть сообщение
float **answers = new float*[numstep];
напиши
C++
1
 answers = new float*[numstep];
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru