Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Динамический массив из эл-ов разного типа. 
:(
    Опции темы
Haddingjar
Дата 18.12.2007, 22:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 11.10.2007

Репутация: нет
Всего: нет



Задача: создать классы `работник` (имя, год рождения) и `менеджер` (имя, год рождения, ранг (число целого типа)). Реализовать конструкторы и деструкторы. Создать динамический массив, имеющий элементы различных типов (или менеджер, или работник) и вывести информацию о всех его элементах.

ЗЫ Я продумал несколько вариантов реализации. Очень хотелось бы изучить и Ваши. Заранее огромное спасибо!
PM MAIL   Вверх
dizel003
Дата 18.12.2007, 22:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 211
Регистрация: 7.11.2007

Репутация: нет
Всего: нет



Цитата(Haddingjar @ 18.12.2007,  22:02)


ЗЫ Я продумал несколько вариантов реализации. Очень хотелось бы изучить и Ваши. Заранее огромное спасибо!

Покажи свои варианты!!!
PM MAIL   Вверх
mrbrooks
Дата 18.12.2007, 22:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 19
Всего: 306



Цитата

Покажи свои варианты!!! smile 


Вот именно уважаемый Haddingjar - с удовольствием поможем - но покажите свои варианты. А то как то не верится ...  smile 
PM MAIL   Вверх
baldina
Дата 18.12.2007, 22:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 15
Всего: 101



Цитата

Очень хотелось бы изучить и Ваши


 smile  smile 
PM MAIL   Вверх
Andrey44
Дата 19.12.2007, 09:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 2
Всего: 26



Уважаемый в С/С++ невозможно сделать массив с различными типами данных.
Хотя в каких-то других языках по-моему можно. smile 


--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
Lazin
Дата 19.12.2007, 09:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 27
Всего: 154



Цитата(Andrey44 @  19.12.2007,  09:18 Найти цитируемый пост)
Уважаемый в С/С++ невозможно сделать массив с различными типами данных.

почему, нельзя?
а как-же вариантные типы данных... в данном случае препод хочет иерархию классов Person->Worker->Manager, в динамичесском массиве нужно будет хранить указатели на базовый класс Person, и работать с ними через виртуальные ф-ии.
простой вариантный тип данных:
Код

struct Variant {
 union
 {
  int int_data;
  double d_data;
 };
 BYTE type;
};

вариант с классами
Код

Person
{
  std::string name;

  Person(const std::string &n) : name(n)
  {
  }

  virtual ~Person()
  {
  }

  virtual std::string get_name()
  {
    return name;
  }
};

class Manager : public Person
{
.....
};

PM MAIL Skype GTalk   Вверх
Andrey44
Дата 19.12.2007, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 2
Всего: 26



Lazin, со всем уважением , но об указателях на базовый класс не было ни слова. smile 

А во вторых если там будут указатели, то они будут одного типа. Посто мы будем вызывать методы разных производных классов smile 


--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
Voldemar2004
  Дата 19.12.2007, 10:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1650
Регистрация: 25.12.2004

Репутация: нет
Всего: 23



Цитата(Haddingjar @  18.12.2007,  23:02 Найти цитируемый пост)
оздать динамический массив, имеющий элементы различных типов (или менеджер, или работник)
Он имеет в виду структуру.  smile  



--------------------
i_i 
(';') 
(V)

user posted image
PM MAIL   Вверх
Andrey44
Дата 19.12.2007, 10:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 2
Всего: 26



Цитата(Voldemar2004 @  19.12.2007,  10:07 Найти цитируемый пост)
Он имеет в виду структуру.  smile  


Да , как-то мы не подумали, может быть все-таки структуру ему надо smile 


--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
DigitSphinx
Дата 19.12.2007, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 442
Регистрация: 28.4.2007
Где: Москва

Репутация: нет
Всего: 3



мы в универе делали похожую лабу, идея в том чтобы создать базовый класс «работник» и производный от него «менеджер» и хранить все в векторе указателей на базовый класс «работник» и пользоваться его вирт. функциями, а уважаемый Haddingjar походу ничего не сделал, и ждет пока за него все сделают!


--------------------
Чтобы пробить стену лбом нужен или большой разбег, или много лбов.
(Альберт Эйнштейн)
Умен ты или глуп, велик ты или мал, не знаем мы, пока ты слова не сказал.
(Альберт Эйнштейн)
user posted image
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0995 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.