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

Удаление элементов из std::vector - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сортировка кучей (пирамидальная) двумерного массива http://www.cyberforum.ru/cpp-beginners/thread788461.html
Здравствуйте, не так давно разобрался с сортировками одномерных массивов, но вот выпало задание отсортировать двумерный массив методом пирамидальной сортировки или, как ещё называют, сортировка с помощью кучи. Может быть у кого-то есть уже готовый код подобного задания или подобной алгоритм сортировки двумерного массива. Напишите пожалуйста.
C++ Вычисление произведения всех элементов вектора М, используя последовательное линейное хранения линейных списков На входе задано последовательность целых чисел М. Известно, что не более 90% элементов списка равны единице. Составить программу для вычисления произведения всех элементов вектора М, используя последовательное линейное хранения линейных списков. Как ето сделать? http://www.cyberforum.ru/cpp-beginners/thread788456.html
C++ Дана матрица М (45). Вычислить вектор D, компоненты которого равны сумме элементов строк матрицы
Здравствуйте!) помогите пожалуйста с такой проблемой. Лабораторную послезавтра сдавать, а я тему пропустил, очень надо((( Задание следующее - Дана матрица М (45). Вычислить вектор D, компоненты которого равны сумме элементов строк матрицы.. Также есть текст этой программы. Вот он: #include <iostream.h> #include <conio.h> void main() { clrscr(); const m=4, n=5; double i, j,...
Найти все натуральные числа, не превосходящие заданного n C++
найти все натуральные числа, не превосходящие заданного n и делящиеся на каждую из своих цифр
C++ Сортировка массива http://www.cyberforum.ru/cpp-beginners/thread788441.html
Здравствуйте) Задание такое : написать сортировку простым слиянием, требуется это без использования рекурсии. Написал вот по Вирту, при компиляции выводятся какие-то большие числа.. Помогите обнаружить проблему, пожалуйста #include "stdafx.h" #include <iostream> #include <conio.h> using namespace std; void mergesort(int mas, int N)
C++ Дана строка, удалить слова содержащие цифры что то не работает она у меня, помогите. #include <string.h> #include <ctype.h> #include <iostream.h> #define DELIM " ,.?!:;" char* a(char* s, size_t n) { size_t i; for(i = 0; i < n; ++i) if(isdigit(s)) return &s; подробнее

Показать сообщение отдельно
Nomadd
14 / 9 / 0
Регистрация: 12.07.2012
Сообщений: 82

Удаление элементов из std::vector - C++

17.02.2013, 18:02. Просмотров 848. Ответов 3
Метки (Все метки)

У меня есть класс Zone.
Но объявлен как массив vector в другом классе.
C++
1
2
3
4
5
6
class World
{
public:
    std::vector<Zone*>Zones;
...
};
Дальше постепенно заполняю его значениями,
C++
1
World::Zones.push_back(new Zone(X,Z,texture));
Но проблема с удалением элементов - элементы удаляются, но память не освобождается.
Пробовал по разному удалять(это всё находится в одной из функций класса World):
C++
1
         World::Zones.clear();
C++
1
         World::Zones.~vector();
C++
1
2
    for(int i=0;i<World::Zones.size();i++)
        delete World::Zones[i];
C++
1
2
    for(int i=0;i<World::Zones.size();i++)
    free(World::Zones[i]);
Но всё равно память не освобождается.
Если после такого удаления опять создать элементы - знаимаемая память только увеличится.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru