Здравейте! Вероятно използвате блокиращ рекламите софтуер. В това няма нищо нередно, много хора го правят.

     Но за да помогнете този сайт да съществува и за да имате достъп до цялото съдържание, моля, изключете блокирането на рекламите.

  Ако не знаете как, кликнете тук

Курсова задача по ООП (C++)

Безплатни реферати, есета, анализи, доклади и всякакви теми свързани с информатика, компютри, интернет.
Алгоритми, теоретична информатика, операционни системи, изици за програмиране, изчислителна техника, компютърни мрежии, бази от данни, компютърна графика, роботика, изкуствен интелект, криптография.
Нова тема Отговори
Потребителски аватар
Mozo
Skynet Cyber Unit
Skynet Cyber Unit
Мнения: 295471
Регистриран: пет юни 01, 2007 14:18
Репутация: 365247
Местоположение: Somewhere In Time

Курсова задача по ООП (C++)

Мнение от Mozo »

Русенски университет “Ангел Кънчев”
Факултет: ЕЕА
Дисциплина:Обектно ориентирано програмиране

Курсова работа


1. Задание

Дадена е следната класификация:

Класификацията да се продължи поне на още три нива. Да се състави йерархия от класове, отразяваща класификацията. Да се декларират съответните класове.
Да се дефинира виртуална функция, която извежда характеритиките на обект от всеки клас в йерархията. Във функцията main да се изгради масив от обекти от произволни класове в йерархията. Да се разработи функция, която обхожда масива и извежда информация за признаците на включените в него обекти.
Декларациите на всеки клас от йерархията да бъдат оформени в отделни заглавни (.h) файлове. Дефинициите на всеки клас и функцията “main” да бъдат оформени в отделни модули (.cpp файлове). Във всички файлове, съдържащи дефинициите на класовете и функцията “main” чрез директивата #include да се включат съответните заглавни файлове, съдържащи декларациите на класовете. Да се създаде проект, състоящ се от зададените модули.

2.Описание на декларираните класове

2.1.Клас Radio
• Тип на класа: Базов
◦ Наследяване от: няма
◦ Базов за: Pro , Bit
◦ Приятелски на: няма
◦ Има приятелски: няма
Описание на основните характерни особености на класа:
◦ Членове данни:
• char *name; – Име.
◦ Конструктор:
• Radio(void); - инициализира атрибута на обекта със стойност по подразбиране.
• Radio(char *); - инициализира атрибута на обекта със променливата която е предадена в скобите.
• Radio(const Radio &); - копиращ конструктор.
◦ Деструктор:
• virtual ~Radio ( void ) { delete name; } – освобождава динамичната памет от заделеното за char * name пространство.
◦ Методи:
• virtual char * GetClassName(void) const; – виртуален метод връщащ името на класа.
• virtual void Print(void); - виртуален метод показващ стойностите на атрибутите за съответния клас.

2.2.Клас Bit
• Тип на класа: Базов
◦ Наследяване от: Radio
◦ Базов за:Analog, Disk
◦ Приятелски на: няма
◦ Има приятелски: няма
Описание на основните характерни особености на класа:
◦ Членове данни:
• int koef; - коефициент.
◦ Конструктор:
• Bit(void); - инициализира атрибутите на обекта със стойности по подразбиране.
• Bit (char *,int); - инициализира атрибутите на класа със предадените в скобите променливи.
• Bit (const Bit &); - Копиращ конструктор.
◦ Деструктор:
• ~Bit(void) {}; – не прави нищо.
◦ Методи:
• virtual char * GetClassName(void) const; – виртуален метод връщащ името на класа.
• virtual void Print(void); - виртуален метод показващ стойностите на атрибутите за съответния клас.


2.3. Клас Pro
• Тип на класа: Базов
◦ Наследяване от: Radio
◦ Базов за: Mont, Size
◦ Приятелски на: няма
◦ Има приятелски: няма
Описание на основните характерни особености на класа:
◦ Членове данни:
• char *vid;- видове.
◦ Конструктор:
• Pro(void); - инициализира атрибутите на обекта със стойности по подразбиране.
• Pro (char *,char *); - инициализира атрибутите на класа със предадените в скобите променливи.
• Pro(const Pro &); - Копиращ конструктор.
◦ Деструктор:
• ~ Pro (void) {delete vid;}; – освобождава динамичната памет от заделеното за char * vid пространство.
◦ Методи:
• virtual char * GetClassName(void) const; – виртуален метод връщащ името на класа.
• virtual void Print(void); - виртуален метод показващ стойностите на атрибутите за съответния клас.

2.4.Клас Mont
• Тип на класа: няма
◦ Наследяване от: Pro
◦ Базов за: няма
◦ Приятелски на: няма
◦ Има приятелски: няма
Описание на основните характерни особености на класа:
◦ Членове данни:
• int x; - .
◦ Конструктор:
• Mont(void); - инициализира атрибутите на обекта със стойности по подразбиране.
• Mont (char *,char *, int); - инициализира атрибутите на класа със предадените в скобите променливи.
• Mont (const Mont &); - Копиращ конструктор.
◦ Деструктор:
• ~ Mont(void) {} – не прави нищо.
◦ Методи:
• virtual char * GetClassName(void) const; – виртуален метод връщащ името на класа.
• virtual void Print(void); - виртуален метод показващ стойностите на атрибутите за съответния клас.

2.5.Клас Size
• Тип на класа: няма
◦ Наследяване от: Pro
◦ Базов за: няма
◦ Приятелски на: няма
◦ Има приятелски: няма
Описание на основните характерни особености на класа:
◦ Членове данни:
• int x; -.
◦ Конструктор:
• Size (void); - инициализира атрибутите на обекта със стойности по подразбиране.
• Size (char *,char *,int); - инициализира атрибутите на класа със предадените в скобите променливи.
• Size (const Size &); - Копиращ конструктор.
◦ Деструктор:
• ~Size(void) {} – не прави нищо.
◦ Методи:
• virtual char * GetClassName(void) const; – виртуален метод връщащ името на класа.
• virtual void Print(void); - виртуален метод показващ стойностите на атрибутите за съответния клас.


2.6.Клас Analog
• Тип на класа: няма
◦ Наследяване от: Bit
◦ Базов за: няма
◦ Приятелски на: няма
◦ Има приятелски: няма
Описание на основните характерни особености на класа:
◦ Членове данни:
• char * anal; - аналогов.
◦ Конструктор:
• Analog(void); - инициализира атрибутите на обекта със стойности по подразбиране.
• Analog(char *, int, char *); - инициализира атрибутите на класа със предадените в скобите променливи.
• Analog(const Analog &); - Копиращ конструктор.
◦ Деструктор:
• ~Analog(void) { delete anal;} – освобождава динамичната памет от заделеното за char * anal пространство.
◦ Методи:
• virtual char * GetClassName(void) const; – виртуален метод връщащ името на класа.
• virtual void Print(void); - виртуален метод показващ стойностите на атрибутите за съответния клас.

2.7.Клас Disk
• Тип на класа: няма
◦ Наследяване от: Bit
◦ Базов за: няма
◦ Приятелски на: няма
◦ Има приятелски: няма

Целият материал:
Прикачени файлове
Курсова задача по ООП (C++).rar
(22.53 KиБ) Свален 30 пъти
Прочетено: 592 пъти
Изображение
Нова тема Отговори

  • Подобни теми
    Отговори
    Преглеждания
    Последно мнение

Върни се в “Информатика, IT, интернет”