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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Посчитать +,-,* ввод/выдов для полинома http://www.cyberforum.ru/cpp-beginners/thread1189324.html
#include <iostream> using namespace std; class Polinom { int length,n,m; float* members; public:
C++ Имитация пружинного маятника Помогите с формулой,не могу понять как можно сделать движение пружинного маятника по оси OX,я могу просто сделать движение вперед назад,а как по формулам можно сделать движение?я не понимаю Добавлено через 2 минуты нашел формулу x = Acos(wt) но не могу понять как в ней идет смещение вправо а когда влево будет Добавлено через 47 минут неужели никто не подскажет http://www.cyberforum.ru/cpp-beginners/thread1189313.html
динамический массив C++
Добрый вечер, помогите пожалуйста с решением данных задач. Очень нужна помощь)
C++ Операторы Cerr, Clog
Помогите пожалуйста разобраться. Я уже довольно долгр прогрммирую на C++, но с операторами cerr и clog не встречался. Немного почитал о них но не совсем всё понял особенно о clog. Объясните пожалуйста доавольно доступно дл чего они нужны и чес они отличаюься друг от друга и от тогоже cout. Заранее благодарен =)
C++ C++ http://www.cyberforum.ru/cpp-beginners/thread1189273.html
записать алгоритм определения того, является ли окружность радиуса R с центром в точке (X0;Y0) заданного координатами своих вершин. Спасайте, вы мне нужны, умные люди.
C++ Алгоритм вычисления объема и площади куба по его диагонали записать алгоритм вычисления объема и площади куба по его диагонали. подробнее

Показать сообщение отдельно
Skaarj
2 / 2 / 1
Регистрация: 28.06.2013
Сообщений: 52
26.05.2014, 23:32     Освобождение памяти
Похоже что проблема с освобождением памяти.
У меня есть абстрактный класс CObject и его потомок CMeteor, в котором реализованы виртуальные функции одна из которых уничтожение объекта через определенное количество времени. Объекты класса CMeteor создаются раз в определенное время и помещаются в контейнер Objects. Правильно ли я понимаю, что при каждом erase объекта из контейнера надо использовать delete? И всю ли память я отчищаю таким способом? Потому что я заметил(через диспетчер задач), что при достижение максимального количество объектов, память всё равно потихоньку уходит. Ровно раз в 20 тиков. При комментирование этого куска - всё нормально, в смысле память не уходит Заранее спасибо.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
    
...
extern std::vector<CObject*> Objects;
CObject * pp = new CMeteor;
 
    if(tic > 20)                            // раз в 20 тиков создаём объект и помещаем в контейнер
    {
        pp->CreateObject(NULL);
        Objects.push_back(pp);
        tic= 0;
    }
    tic++;
    
    for(int l = 0; l < (int)Objects.size(); l++)        // проверяем если объект существует N тиков, то уничтожаем и чистим память
    {
        if(Objects[l]->RemoveObject() == true)
        {
            Objects.erase(Objects.begin() + l);
            delete pp;
        }
    }
 
    for(int l = 0; l < (int)Objects.size(); l++)        //прорисовка объекта
    {
        Objects[l]->DrawObject();
 
    }
...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru