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

Как правильно очищать вектор указателей - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Защита 2д онлайн игры от взломов http://www.cyberforum.ru/cpp-beginners/thread1244135.html
Здравствуйте, вообщем, я пытаюсь написать 2д рпг онлайн игру, которую в будущем хотелось бы переделать под андроид и выпустить в маркет, но речь не об этом. На данный момент игра реализована как...
C++ Подключение библиотеки Glaux.lib и ошибка компиляции Здравствуйте, У меня возникла проблема - надо подключить библиотеку GLAux (OpenGL-ая). Скачал от нее .h и .lib, подключил .h через #include, в свойствах проекта добавил Glaux.lib в дополнительные... http://www.cyberforum.ru/cpp-beginners/thread1244127.html
C++ Работает ли Борланд C++ 6 с Windows 7
Извиняюсь за "глупый" вопрос. Несколько лет работал с С++ В6 менялись компы, менялись ОС, но всё время установка С++ получалась не с "первого раза" (что терпимо), и иногда в процессе работы -...
Не могу открыть WMware через VS, не видит wmx файл C++
Добрый день, в visual studio 2012 пишу консольное приложение, которое должно открывать виртуальную машину. Столкнулся с такой проблемой, что не находит *.wmx файл(файл конфигураций). Пишет вот что:...
C++ Вычислительная часть на С++ и графика на Python http://www.cyberforum.ru/cpp-beginners/thread1244030.html
Здравтсвуйте. Возник вопрос - можно ли использовать Python (pygame) в программе на c+. То есть вся вычеслительная часть на С++, а графика на Python.
C++ Оцените мой Doodle Jump Написал клон всем известной игры Doodle Jump. Прошу оценить и дать советы. Реализованы основные функции. Пока нету поворота игрока( смотрит все время в одну сторону ), и примитивная генерация... подробнее

Показать сообщение отдельно
MoOr
1 / 1 / 1
Регистрация: 18.08.2014
Сообщений: 12

Как правильно очищать вектор указателей - C++

18.08.2014, 18:21. Просмотров 888. Ответов 4
Метки (Все метки)

Привет Всем! Есть вопрос по вектору указателей, как правильно очищать память при таком случае очищение происходит существенно медленнее чем инициализация, но память очищается:
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
29
30
31
32
33
34
35
36
37
38
39
40
#include <vector>
 
 
 
void creat(std::vector<int*> &p)
{
    for (int i(0); i<5000000; i++)
    {
        int *s = new int[10];
        for (int j(0); j<10; j++)
            s[j] = i;
        p.push_back(s);
    }
 
}
 
 
void delvec(std::vector<int*> &p)
{
    for (int i(0); i<p.size(); i++)
        delete p[i];
    p.clear();
    p.shrink_to_fit();
 
}
 
 
int main ()
{
    std::vector<int*> p;
    
    
    creat(p);
    
    delvec(p);
        creat(p);
        delvec(p);
    
    
}
Есть ли более "быстродейственные" способы очищения памяти тестового массива из примера?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru