Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
3 / 3 / 5
Регистрация: 21.10.2012
Сообщений: 182

Как выглядит конструктор и деструктор для vector ?

21.11.2013, 21:55. Показов 2535. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть класс:
C++
1
2
3
4
5
6
class table_m
{
public:
    vector <Item> table;
    table_m();
};
Как будет выглядеть для него конструктор и деструктор? Конструктор и деструктор для vector нужно вызывать внутри конструктора table_m() ?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.11.2013, 21:55
Ответы с готовыми решениями:

Определить конструктор без параметров, конструктор с одним параметром, конструктор с двумя параметрами, деструктор
Создать класс «матрица». Данный класс должен содержать элементы типа int, определяющие число строк, столбцов и состояние ошибки. Определить...

Конструктор и деструктор для cout
Здарова! нужно решить задачу: есть код: int main() { cout &lt;&lt;&quot;Hellow world&quot;&lt;&lt;endl; } нужно без модифицирования...

Деструктор для абстрактного класса, использующего static vector
Доброго времени суток. Возникла проблема с написание деструктора абстрактного класса, использующего static vector для хранения ссылок на...

11
 Аватар для iRomul
163 / 104 / 14
Регистрация: 17.10.2012
Сообщений: 488
21.11.2013, 22:01
C++
1
2
3
4
5
6
7
8
9
10
11
//default (1)   
explicit vector (const allocator_type& alloc = allocator_type());
//fill (2)  
explicit vector (size_type n, const value_type& val = value_type(),
                 const allocator_type& alloc = allocator_type());
//range (3) 
template <class InputIterator>
         vector (InputIterator first, InputIterator last,
                 const allocator_type& alloc = allocator_type());
//copy (4)  
vector (const vector& x);
1
3 / 3 / 5
Регистрация: 21.10.2012
Сообщений: 182
21.11.2013, 22:14  [ТС]
Так не понятно, вы можете проиллюстрировать работу конструктора и деструктора для этого класса:
C++
1
2
3
4
5
6
7
class table_m
{
public:
    vector <Item> table;
    table_m();
    ~table_m();
};
0
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
21.11.2013, 22:15
C++
1
2
table_m::table_m() {}
~table_m::table_m() {}
2
3 / 3 / 5
Регистрация: 21.10.2012
Сообщений: 182
21.11.2013, 22:21  [ТС]
C++
1
2
table_m::table_m() {}
~table_m::table_m() {}
Разве таим образом будет инициализироваться и удалятся контейнер?
0
873 / 771 / 173
Регистрация: 11.01.2012
Сообщений: 1,942
21.11.2013, 22:22
Цитата Сообщение от Sammm Посмотреть сообщение
Как выглядит конструктор и деструктор для vector ?
От задачи зависит
1
3 / 3 / 5
Регистрация: 21.10.2012
Сообщений: 182
22.11.2013, 00:40  [ТС]
Класс таблица:
C++
1
2
3
4
5
6
7
class table_m
{
public:
    vector <Item> table;
    table_m();
    ~table_m();
};
Класс элемент:
C++
1
2
3
4
5
6
class Item
{
public:
    int number;
    char * info;
};
Что еще необходимо знать для реализации конструктора и деструктора ?

Добавлено через 2 часа 12 минут
Как удалить все содержимое контейнера?
0
873 / 771 / 173
Регистрация: 11.01.2012
Сообщений: 1,942
22.11.2013, 00:45
Цитата Сообщение от Sammm Посмотреть сообщение
Как удалить все содержимое контейнера?
C++
1
vector <Item> ().swap(table);
c++11
std::vector::shrink_to_fit
0
Неэпический
 Аватар для Croessmah
18144 / 10728 / 2066
Регистрация: 27.09.2012
Сообщений: 27,026
Записей в блоге: 1
22.11.2013, 02:07
Цитата Сообщение от Sammm Посмотреть сообщение
Как удалить все содержимое контейнера?
C++
1
vec.clear ( ) ;
http://www.cplusplus.com/refer... tor/clear/
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
22.11.2013, 12:54
Наверное имелось в виду что-то типа того:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class table_m
{
private:
    vector <Item> table;
public:
    table_m()
      {
      };
    table_m( unsigned int _size )
      {
      table.reserve( _size );
      };
    ~table_m() 
      {
      table.clear();  // Удалили элементы
      vector<Item>().swap(table); // Очистили память
      };
};
Цитата Сообщение от Sammm Посмотреть сообщение
Конструктор и деструктор для vector нужно вызывать внутри конструктора table_m() ?
Нет.
0
What a waste!
 Аватар для gray_fox
1610 / 1302 / 180
Регистрация: 21.04.2012
Сообщений: 2,733
22.11.2013, 13:02
Цитата Сообщение от Sammm Посмотреть сообщение
Конструктор и деструктор для vector нужно вызывать внутри конструктора table_m() ?
Только конструктор, и не в теле конструктора table_m(), а в списке инициализации этого конструктора, иначе для table будет вызван конструктор по умолчанию. Вызов деструктора указывать нигде не надо - для этого они и нужны.
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
22.11.2013, 13:49
Цитата Сообщение от gray_fox Посмотреть сообщение
Вызов деструктора указывать нигде не надо - для этого они и нужны.
Возможно нюансы: placement new()
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.11.2013, 13:49
Помогаю со студенческими работами здесь

Дописать конструктор и деструктор для класса
Помогите пожалуйста написать конструктор копии и деструктор, а также вызвать их, чтобы деструктор выводил на экран &quot;работает&quot; ...

Для класса задать конструктор и деструктор
Ребята,нужна помощь в написании программы. Для класса задать конструктор(для выделения памяти,открытия файлов,задания начальных значений...

Как сделать конструктор и деструктор с параметрами?
как сделать конструктор и деструктор с параметрами?:-| #include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; class...

Конструктор для vector
привет всем ! к примеру класс, в котором под private находится объект например vector&lt;int&gt; R, как написать конструктор для таких...

Как работает деструктор и конструктор при наследовании?
Возникла проблемка, не пойму, как работает деструктор и конструктор в моей программе. Я не вызываю явно конструктор, как в этом случае...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение/ Перевод Сайт называется reddit: The Thinkpad X220 Tablet is the best budget school laptop period. Это. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru