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

Нужно придумать функцию по созданию объекта класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как избавиться от мусора в конце строки? http://www.cyberforum.ru/cpp-beginners/thread1601255.html
#include "stdafx.h" #include <stdio.h> #include <iostream> #include <conio.h> #include <math.h> #include <ctype.h> #include <cstdio> using namespace std; void main()
C++ Создать структуру, содержащую сведения об абитуриентах Создать структуру, содержащую сведения об абитуриентах. Программа должна производить: 1. подсчет кол-ва абитуриентов, которым уже исполнилось 18 лет; 2. вывод в виде таблицы информации об... http://www.cyberforum.ru/cpp-beginners/thread1601246.html
C++ Интреполяционные полиномы Лагранжа и Ньютона - выводятся разные результаты
Написать программу для построения интерполяционных многочленов Лагранжа и Ньютона для табличной функции. Упростить полученные многочлены. i 0 1 2 3 4 ...
Обработка символьных и строковых данных C++
Обработка символьных и строковых данных Подсчитать кол-во знаков, отличных от цифр в заданной строке. Если их нет, выдать соответствующее сообщение. Определить длину введенной строки и количество...
C++ Ошибки: неразрешенный символ http://www.cyberforum.ru/cpp-beginners/thread1601221.html
1> main.cpp 1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: void __thiscall Map::show_sect(void)" (?show_sect@Map@@QAEXXZ) в функции _main 1>sport.obj : error LNK2019:...
C++ Нарисовать двигающуюся машину помогите сделать так чтобы при запуске программы машина двигалась.. вот код машины: с++ #include <Windows.h> #include <stdlib.h> #include <iostream> #include <math.h> using namespace... подробнее

Показать сообщение отдельно
-L
15 / 9 / 10
Регистрация: 03.12.2015
Сообщений: 79
03.12.2015, 22:06
Andresgoro,

std::vector<type> (вектор) это контейнер для динамического массива элементов типа type (входит в STL - Standart Template Library (давно в стандартной библиотеке)) с доступом до произвольного элемента при помощи итераторов (это, грубо говоря, такой указатель на элемент вектора). Push_back добавляет новый элемент в конец вектора (аналог push для стека).

В приведённом коде создаётся вектор указателей на объекты класса Account

C++
1
std::vector<Account*> v_accounts;
при вызове функции create_new() в вектор добавляется новый элемент в конец

C++
1
v_accounts.push_back(new Account());
Доступ можно осуществлять например через оператор []

C++
1
v_accounts[3]->some_method(); // Вызов метода some_method четвёртого (с нуля отсчёт) объекта в векторе
Когда вектор больше не нужен, необходимо пробежаться по нему и почистить память

Добавлено через 6 минут
Если ограничить число аккаунтов, то есть ещё такой вариант (без векторов):

C++
1
2
3
4
5
6
7
8
9
const int max_size = 100; //кол-во аккаунтов
ac* vec[max_size]; //массив указателей на объекты
 
void create_new()
{
    static int i = 0;
    vec[i] = new ac(); //добавляем новый
    ++i;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru