![]() |
|
Модераторы: bsa |
![]()
|
|
| Mormishka |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 236 Регистрация: 25.8.2010 Репутация: нет Всего: нет |
Хочу создать класс,
конструктор которого massiv(int n,template <T>) к каждому элементу к которого можно обращаться вот так massiv[i1]...[in] Как возможно сделать? |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 20 Всего: 110 |
это?:
http://liveworkspace.org/code/ad6533a59a01...a6b2dfbc1ffdb4e |
|||
|
||||
| Mormishka |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 236 Регистрация: 25.8.2010 Репутация: нет Всего: нет |
boostcoder,
как я понял создается одномерный массив размера n. Я имел ввиду создать n-мерный массив. Не одномерный массив размера n, а массив i1 x i2 x ... in-1 x in |
|||
|
||||
| xvr |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 35 Всего: 223 |
Это сообщение отредактировал(а) xvr - 18.4.2011, 12:04 |
||||
|
|||||
| Mormishka |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 236 Регистрация: 25.8.2010 Репутация: нет Всего: нет |
xvr,
Как им пользоваться? Это действительно многомерный массив ? |
|||
|
||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 35 Всего: 223 |
Действительно, но реализацию вам придется написать самому
Оператор индексации класса massiv возвращает другой класс, у которого так же есть оператор индексации, который возвращает еще другой класс, и так далее, последний из них возвращает референс на элемент Ну например - массив интов размерности 3:
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Mormishka, обычно, такие вещи на практике не нужны. Подумай над задачей хорошенько, возможно, найдется более красивое и простое решение.
|
|||
|
||||
| Mormishka |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 236 Регистрация: 25.8.2010 Репутация: нет Всего: нет |
bsa,
Ну хорошо, нужно одномерный, двумерный и трехмерный с шаблоном. Еще такой вопрос. Я в вначале отказался от многомерных массивов т.к. на нелзя в отладке посмотреть, что в них. Это от чего зависит ? Это сообщение отредактировал(а) Mormishka - 20.4.2011, 17:10 |
|||
|
||||
| Mormishka |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 236 Регистрация: 25.8.2010 Репутация: нет Всего: нет |
Подскажите хоть как это сделать, хотя бы примерно?
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Mormishka, сделай остальные из трехмерного. Ну или из одномерного (массив массивов массивов), хотя, это уже предложили сделать через шаблоны.
Это сообщение отредактировал(а) bsa - 20.4.2011, 17:15 |
|||
|
||||
| Mormishka |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 236 Регистрация: 25.8.2010 Репутация: нет Всего: нет |
Это сообщение отредактировал(а) Mormishka - 20.4.2011, 19:31 |
||||
|
|||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 35 Всего: 223 |
Напиши public: перед 11 строкой (я как то забыл)
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
добавь "public:" после 10-й строки.
|
|||
|
||||
| Mormishka |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 236 Регистрация: 25.8.2010 Репутация: нет Всего: нет |
память то динамически выделяется? массив динамический? мне-то как раз это нужно.
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
как сделаешь, так и будет. тебе дали заготовку, которую еще нужно доделать. |
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |