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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
spyphy
1 / 1 / 0
Регистрация: 03.11.2012
Сообщений: 35
#1

std::vector и деструкторы - C++

15.01.2013, 13:48. Просмотров 377. Ответов 4
Метки нет (Все метки)

Создаю динамический массив vector, состоящий из объектов, в которых есть конструкторы и деструкторы.
как-то так:

C++
1
2
3
4
5
6
7
8
9
{
vector<Element> vec;
for(int i=0; i<10; i++) {
  ...
  t0 = func(...);
  vec.push_back(t0);
}
vec.clear();
}
10 объектов по очереди помещаются в массив, в пределах указанного кода вызываются конструкторы и деструкторы как положено, пока не происходит выход за пределы последней закрывающейся скобки, после чего вызывается штук 100 деструкторов, которые пытаются освободить память из-под неизвестного чего. в конечном счете вылетает на Segmentation fault.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.01.2013, 13:48     std::vector и деструкторы
Посмотрите здесь:

Вывести значения std::vector<std::vector<int*> > - C++
Подскажите, как вывести значения? const size_t row = 3; const size_t col = 3; std::vector&lt;std::vector&lt;int*&gt; &gt; imatrix; //...

Как изменять размер std::vector<std::vector>? - C++
Здравствуйте, как нужно изменять размер std::vector&lt;std::vector&gt; например: std::vector&lt;std::vector&lt;float&gt;&gt; data; ...

Std::vector<std::pair<std::vector<int>::iterator, std::vector<int>::iterator> - C++
Вопрос по вектору. Допустим есть вектор, std::vector&lt;int&gt; vec; на каком - то этапе заполнения я ставлю закладку итератора, ...

Std::vector/QVector в классе или std::vector/QVector классов? - C++
Доброе время суток! Собственно вопрос в самой теме, есть некий класс class WorkJornal { private: string manager; ...

статическая и динамическая матрица на std::array and std::vector - C++
Всем привет. Решил немного поиграться с шаблонами. Скилл чуть больше 0. Можно ли с помощью шаблонной магии подставить вместо...

vector<vector<double>> + std::sort() - C++
Позвольте узнать... Возможно ли через vector&lt;vector&lt;double&gt;&gt; и функцию std::sort() отсортировать строки массива в лексикографическом...

Std::function and std::vector - C++
Как положить обёртки в вектор? Не используя библиотеку boost. function&lt;void(int)&gt; first_func() = one(); function&lt;void(int)&gt;...

Контейнер std::vector - C++
Помогите определить почему не работает задача. Оибку выбивает на строку k.push_back(0); #include &lt;iostream&gt; #include &lt;math.h&gt; ...

std::vector пустой - C++
Всем привет. Собственно проблема: a.push_back(56); Как бы я не добавлял елементы в вектор он все ровно пустой. Раньше такого...

Указатель на std::vector - C++
Добрый вечер, всегда боялся передавать доступ к std::vector'y класса через: 1) указатель на контейнер 2) ссылка на контейнер 3)...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
12980 / 7292 / 812
Регистрация: 27.09.2012
Сообщений: 18,007
Записей в блоге: 3
Завершенные тесты: 1
15.01.2013, 13:55     std::vector и деструкторы #2
Поверьте, ошибка не в векторе =)
spyphy
1 / 1 / 0
Регистрация: 03.11.2012
Сообщений: 35
15.01.2013, 14:09  [ТС]     std::vector и деструкторы #3
ну да, вроде не там. и откуда тогда берутся эти деструкторы?...
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
15.01.2013, 14:19     std::vector и деструкторы #4
Спросите вот у этих ребят: Element, t0 и func(). Особенно у первого.
spyphy
1 / 1 / 0
Регистрация: 03.11.2012
Сообщений: 35
15.01.2013, 14:28  [ТС]     std::vector и деструкторы #5
всё, нашел! ошибка была вообще в другом месте, хотя и рядом. спасибо.
Yandex
Объявления
15.01.2013, 14:28     std::vector и деструкторы
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru