Динамические массивы + перегруженный конструктор
Здравствуйте господа и дамы.
Есть класс, допустим Foo, в нем конструктор перегружен таким образом, что принимает несколько (или один) аргументов. Собственно вопрос, как создать динамический массив элементы которого являются экземплярами этого класса. Примеры: Код:
можно было бы создать динамический массив, еслиб не был перегружен конструктор: 1. перестановка скобок, квадратных и круглых 2. введение дополнительных круглых скобок. по любому компилятор ругаеца. |
Re: Динамические массивы + перегруженный конструктор
Для использования new[] классу необходимо задать конструктор по умолчанию.
Если очень необходимо создать динамический массив со значениями для конструктора, не совпадающими со значениями по умолчанию, можно использовать: - функцию init() для инициализации класса: Код:
#include <string> Код:
class Foo { |
Re: Динамические массивы + перегруженный конструктор
|
Re: Динамические массивы + перегруженный конструктор
В общем ясно, для того чтобы инициализировать динамический массив по моему хотенью нужны дополнительные телодвижения.
А как было бы приятно написать например: Foo* f=new Foo[128](56,124,"sobaka ne layet"); и чтоб все скомпилилось Цитата:
Цитата:
Всем спасибо. |
Re: Динамические массивы + перегруженный конструктор
Цитата:
|
Re: Динамические массивы + перегруженный конструктор
а можно тогда пример использования?
мааааленький. |
Re: Динамические массивы + перегруженный конструктор
Пример не поможет. Чтобы правильно использовать контейнеры STL, надо сначала про них прочитать в какой-нибудь книге по С++ или статье. Потом прочитать Скота Мейерса, чтобы избежать ошибок при использовании.
http://anatolix.naumen.ru/Books/EffectiveSTL?v=pqe Если так хочется пример: Код:
#include <vector> |
Часовой пояс GMT +4, время: 09:54. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot