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

с++ Освобождение памяти - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ SDL - первый урок http://www.cyberforum.ru/cpp-beginners/thread942031.html
Помогите, кто знает. Есть код: //#include "stdafx.h" #include "SDL.h" int main(int argc, char* args) { SDL_Surface* hello = NULL; SDL_Surface* screen = NULL; SDL_Init(SDL_INIT_EVERYTHING);
C++ Пропускает операторы считывания информации после первой итерации Доброго времени суток всем. Все кому лень читать предистории можете смело пропускать следующие строки, смотреть на код, и возникшую проблему которую я опишу под ним. Я лишь недавно занялся изучением С++ по книге Дейтелов. На протяжении первых 5-6 глав там мусолят класс под названием GradeBook. Ну и я следуя инструкциям, и некоторым своим соображениям мусолил этот же класс вместе с книгой. В 5-ой... http://www.cyberforum.ru/cpp-beginners/thread942022.html
C++ Как использовать переменную типа string в заголовочном файле?
Есть файл cpp в котором объявлена переменная string head; Как мне использовать эту переменную в заголовочном файле?
C++ Не собирается проект
bool CreateDisk(char *cmd) { char *dsk_name=GetParameter(cmd, "name="); int fd; //|предупреждение: variable «fd» set but not used | if (dsk_name == NULL) { cout<<"Disk name parameter not found. Default name.\n"; fd=open("disket.img", O_RDWR | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR | S_IROTH | S_IWOTH); }
C++ Полиморфизм http://www.cyberforum.ru/cpp-beginners/thread941975.html
Всем доброго времени суток.Сразу к делу. Если описывать с помощью полиморфизма подклассы и потом динамично их создавать ,то можно вызывать замещенные(перегруженные) виртуальные функции описанные в базовом классе. А если мне нужно вызвать функцию которая описана только в подклассе? Если написал бред,- пожалуйста гляньте код. Обратите внимание на 63 строчку. Именно в ней загвоздка #include...
C++ Ошибка при вызове команды open Установил на семерку Visual C++ 6.0 Standard Edition. При открытии файлов появляется вот такая вот ошибка. С вылетает. ------------------------------------------------ Имя события проблемы: APPCRASH Имя приложения: MSDEV.EXE Версия приложения: 6.0.8168.0 Отметка времени приложения: 35889584 Имя модуля с ошибкой: devshl.dll Версия модуля с ошибкой: 6.0.8168.0 Отметка времени... подробнее

Показать сообщение отдельно
Nidxogg
0 / 0 / 0
Регистрация: 27.05.2012
Сообщений: 8
22.08.2013, 22:26     с++ Освобождение памяти
Здравствуйте,
объявляю в классе:
Код
А ** а;
Далее выделяю память в функции:
Код
а=0;
a = new A*[5];
for(uint i=0;i<5;++i)
{
a[i] = new A;
}
Память освобождаю следующим образом:
Код
for(uint i=0;i<5;++i)
{
if(a[i])
   delete a[i];
}
if(a)
   delete [] a;
В хедере класса А объявляются 2 массива, которые инициализируются в конструкторе
Код
double mas1[4];
double mas2[4];

for(uint i=0;i<4;++i)
{
mas1[i]=0;
mas2[i]=0;
}
Все это прикручено к двум кнопкам. Одна создает объекты класса А, другая вызывает функцию в которой освобождается память.
После пары нажатий "создать"\"удалить" программа выдает ошибку чтения памяти при создании объектов.

Где в коде нужно искать проблему?
P.S Странное "наблюдение", что если инициализировать только первый массив, то все работает нормально
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru