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

Как создать динамический массив структур? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Выведите на экран значение переменных в строку и в столбик http://www.cyberforum.ru/cpp-beginners/thread375875.html
Помогите написать программу на С: Введите три переменные a (тип int), b (тип double) и с (тип bool) их значение определите при инициализации. Выведите на экран значение переменных в строку и в столбик, используя оператор printf.
C++ Упорядочить блоки по величине их диагоналей (по убыванию значений их диагоналей). Итак, есть следующая задача: В заданной двумерной матрице выделить 3 блока по 2 строки и 2 столбца (блоки расположены на главной диагонали матрицы). Упорядочить блоки по величине их диагоналей (по убыванию значений их диагоналей). Сколько раз я не перечитывал условие, так и не смог его понять. Буду благодарен, если кто-нибудь объяснит мне, что от меня хотят, ну и заодно, при случае,... http://www.cyberforum.ru/cpp-beginners/thread375869.html
pictureBox C++
здравтсвуйте) в windows forms applications в pictureBox необходимо нарисовать сетку(таблицу), где нужно будет закрашивать элементы этой сетки по щелчку мыши и по двойному щелчку он бы "раскрашивался".(необходимо получить координаты в сетке этого прмоугольника-строку и столбец..) подскажите пожалуйста как это можно реализовать. весь алгоритм я написал но с этим крутой затык..
C++ как правильно?
подскажите как правильно записать? есть ли другой способ записать кроме этого? sqrt(sqrt(y/x))
C++ Найти в строке слово-перевертыш максимальной длины http://www.cyberforum.ru/cpp-beginners/thread375853.html
Дана строка в виде предложения. Найти в ней слово-перевертыш максимальной длинны. Словом будем считать набор символов, отделенных с двух сторон пробелами.
C++ STRING в численный тип char в число я умею переводить: atoi(),atol(),atof(). Но это C функции, со STRING не работают уже. Есть ли функция для STRING перевода в число или придётся самостоятельно прописывать? подробнее

Показать сообщение отдельно
Bers
Заблокирован
02.11.2011, 02:16     Как создать динамический массив структур?
Цитата Сообщение от Mr.X Посмотреть сообщение
Это единственный выход, если в векторе нужно хранить полиморфные объекты-потомки одного базового класса. Размеры-то у них могут быть разные.
Ну я бы сказал - это единственный способ сделать простую имитацию, что якобы полиморфы живут в одном массиве.

Я с вашего позволения перефразирую вашу фразу:
"Если по задаче требуется единая точка доступа к группе объектов, создаётся вектор умных указателей на эти объекты".

(и совсем не обязательно, что бы это была группа однотипных, или полиморфных объектов. При желании можно состряпать такую имитацию, якобы в массиве хранятся объекты разных типов. Хотя это конечно сахар).

Но в том месте, где происходит непосредственно создание самого объекта, допустим, в недрах специализированной фабрики: CBase* ob = new CConcreteOb; можно решить жилищный вопрос реального объекта.

Для полиморфов можно создать несколько массивов.
Каждый конкретный объект определяется на местожительство в свой массив, а наружу отдаётся смартпоинтер на него.

Пожалуйста, вам нужна единая точка доступа к объектам - пихайте этот смартпоинтер в массив смартпоинтеров. Делайте с ним вообще все, что хотите.

Честно говоря, я удивлен, что в с++ до сих пор нет стандартизированной технологии, которая позволяла бы очередной созданный в куче объект-одиночку автоматически подсаживать в массив к своим собратьям-одиночкам, что бы одиночные объекты по всей памяти не болтались шаляй-валяй.

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