Здравствуйте, FlashBack, Вы писали:
ААТ>>Ответ alextro совершенно правилен. Объекты типа 'массив' должны освобождаться именно при помощи 'delete[]', а не 'delete'. Но одной из особенностей MSVC++ 6 является то, что для массивов 'char' ошибочное применение 'delete' вместо 'delete[]' не приводит к каким-либо проблемам, не говоря уже об access violation. Так что проблема в твоем случае заключалась не в этом. Советую еще раз внимательнее просмотреть и протестировать код. Если все, что ты исправил, это замена 'delete' на 'delete[]', то этот access violation ты еще увидишь.
FB>Кокда появился Access Violation я просто закомментировал все delete и всё стало ок. А сейчас дописал с исправлением и всё работает, так что я думаю проблема была всё же в этом
А теперь ради эксперимента попробуй в финальном коде заменить 'delete[]' назад на 'delete'. Если программа снова начнет падать, что мы получим очень ценный пример, наглядно демонстрирующий необходимость использования именно 'delete[]' для удаления массивов с элементами типа 'char'. До сих пор такого примера найти не удавалось.