Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.05.2010, 23:57   #1
Laplas
Пользователь
 
Регистрация: 02.10.2009
Сообщений: 25
По умолчанию классы. контейнер типа очередь

всем доброго здравия! ув.форумчане, помогите справиться с заданием..Язык С++
задание: нужно создать контейнер типа очередь, (двусвязный список) для класса студент.Выгрузка данных из файла, запись в фаил, вставка информации в произвольную позицию в списке. Создать указатель к произвольной позиции списка.
Студентов надо мож человек 15 фамилий.
до этого мы делали такое задание:Создать класс STUDENT, имеющий имя, курс и идентификационный номер. Определить конструктор, деструктор и функцию печати. Создать производный класс public - STUDENT_1 , содержащий тему диплома. Определить конструкторы по умолчанию с разным числом параметров, деструктор, функцию печати. Определить названия диплома и идентификационного номера.
Код:
#include <conio.h>
#include <iostream.h>

// Базовый класс student
class student
{
private:
char *name; // Имя студента
int kurs, id; // Номер курса и иднетицикационный номер

public:
student() // Конструктор по умолчанию (без параметров)
{
name = new char[7]; // Выделяем участок памяти под имя (7 символов типа char)
strcpy(name, "Ivanov"); // Имя по умолчанию - Ivanov
kurs = 1;
id = 001;
}

student(char *nm, int kr, int ident) // Конструктор с параметрами
{
name = new char[strlen(nm+1)];
strcpy(name, nm);
kurs = kr;
id = ident;
}

~student() // Деструктор
{
delete [] name; // Освобождаем память
}

void print() // Метод печатает информацию на экране
{
cout << endl << "Name: " << name << endl;
cout << "Kypc: " << kurs << endl;
cout << "ID : " << id << endl << "-------------" << endl;
}
};



// Производный класс student_1
class student_1 : public student
{
private:
char* tema; // Поле под название темы

public:
student_1() : student() // Конструктор по умолчанию (также вызывается конструктор по умолчанию student() базового класса
{
tema = new char[22]; // Выделяем память под название темы
strcpy(tema, "Class and polimorfizm"); // Название темы по умолчанию
};

// Конструктор с параметрами
student_1(char* nm, int kr, int ident, char* tem) : student(nm, kr, ident)
{
tema = new char[strlen(tem+1)];
strcpy(tema, tem);
}

~student_1() // Деструктор
{
delete [] tema; // Освобождаем память
}

void print() // Переопределяем метод вывода информации на экран
{
cout << endl << "TeMa: " << tema;
student::print(); // Вызываем метод print() базового класса student
}

};

int main(int argc, char* argv[])
{
int kr, ident;
string nm, tema;

cout << "BBeguTe uM9 :";
cin >> nm;
cout << "BBeguTe HoMep Kypca :";
cin >> kr;
cout << "BBeguTe ID :";
cin >> ident;
cout << "BBeguTe TeMy gunJIoMa :";
cin >> tema;

student_1 a; // Создаём объект класса student_1 по умолчанию
student_1 b(nm.begin(), kr, ident, tema.begin()); // Создаём объект класса student_1 с параметрами

a.print();
b.print(); // Вызываем методы вывода на экран


getch();
return 0;
}
вопрос вот в чем: можно как нить на основе этого кода написать код для нового задания?? заранее благодарен

Последний раз редактировалось Laplas; 30.05.2010 в 00:10.
Laplas вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Контейнер ! curtcobain Общие вопросы Delphi 3 04.02.2009 20:27
OLE-контейнер Flyer БД в Delphi 6 28.08.2007 16:27
ассоциативный контейнер SERGOO Общие вопросы C/C++ 4 17.06.2007 11:05