Форум программистов, компьютерный форум CyberForum.ru

НУжно Поправить класс студент - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Файл с записями вида: наименование товара,стоимость,дата использования http://www.cyberforum.ru/cpp-beginners/thread989454.html
Задание: Задан файл с записями вида: • наименование товара; • стоимость; • дата использования. На его основе сформировать файл, куда войдут записи для определенного заранее товара, срок годности которого истечет к некоторой указанной дате. помогите с заданием плз
C++ Диапазон значений указателей Здравствуйте! Подскажите пожалуйста, как узнать ограничения на значение указателей в системе? http://www.cyberforum.ru/cpp-beginners/thread989448.html
рекурсия C++
Дано натуральное число N и последовательность N элементов. Вы должны вывести данную последовательность в обратном порядке. Ввод 3 1 2 3 Вывод 3 2 1
Задачи для C++ C++
Есть несколько задач но сделать нужно в течении пару часов. Вот собственно задания: Составить программу, которая формирует файл из строчных латинских букв, выбираемых случайным образом. Составить программу, которая в файле, сформированном программой из предыдущей задачи, подсчитает количество букв z. Составить программу, записывающую на диск таблицу Менделеева. Составить программу,...
Visual C++ Чтение из файла и создание объектов MFC http://www.cyberforum.ru/cpp-beginners/thread989444.html
Rect MyRect; CPaintDC dc(this); char buff; int x1,x2,x3,x4,i=1; ifstream f("E\\data.txt"); while(!f.eof()) { f>>buff; x1 = atoi(buff); f>>buff;
C++ написать программу нужно написать программу задача: После каждого слова во введенной пользователем строке поставить троеточие. помогите пожалуйста подробнее

Показать сообщение отдельно
LordpYtel
0 / 0 / 0
Регистрация: 09.09.2013
Сообщений: 5
27.10.2013, 15:19     НУжно Поправить класс студент
Есть код программы но выбрасывает ошибки на всех компиляторах, скажите в чем проблема. заранее спасибо.
Задача:
Создать класс студент, имеющий имя (указатель на строку), курс и идентификационный номер. Определить конструкторы, деструктор и функцию печати. Создать public-производный класс – студент-дипломник, имеющий тему диплома. Определить конструкторы по умолчанию и с разным числом параметров, деструкторы, функцию печати. Определить функции переназначения названия диплома и идентификационного номера.
Код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
#include <iostream>
#include <cstring>
 
using namespace std;
 
class Student
{
public:
    // default constructor
    Student();
    // constructor with params
    Student(const char *name, int course, int ID);
    // destructor
    ~Student();
    // display info
    virtual void ShowInfo() const;
protected:
    char *m_name;    // name
    int m_course;    // course
    int m_ID;        // ID
};
 
// default constructor
Student::Student()
{
    // default values
    m_name = NULL;
    m_course = 0;
    m_ID = 0;
}
 
// constructor with parameters
Student::Student(const char *name, int course, int ID)
{
    // set name
    if(name != NULL)
    {
        // memory allocation
        try
        {
            m_name = new char[strlen(name) + 1];
        }
        catch(...)
        {
            // error
            exit(0);
        } // end of try-catch
 
        strcpy(m_name, name);
    } // end of if
 
    // set course and ID
    if(course >= 1 && course <= 6)
    {
        m_course = course;
    } // end of if
    m_ID = ID;
}
 
// destructor
Student::~Student()
{
    // free memory
    if(m_name != NULL)
    {
        delete [] m_name;
    } // end of if
}
 
// show info
void Student::ShowInfo() const
{
    if(m_name != NULL)
    {
        cout << "Name: " << m_name << "\t" << "Course: " << m_course << "\t" << "ID: " << m_ID << endl;
    } // end of if
    else
    {
        // no name, nothing to do
        cout << "Student has no name" << endl;
    } // end of else
}
 
class DipStudent : public Student
{
public:
    // default
    DipStudent();
    // with params
    DipStudent(const char *name, int course, int ID);
    // and one more
    DipStudent(const char *name, int course, int ID, const char *theme);
    // destructor
    ~DipStudent();
    // set diploma theme
    void SetTheme(const char *theme);
    // set ID
    void SetID(int ID);
    // display info
    virtual void ShowInfo() const;
private:
    char *m_theme;    // diploma theme
};
// default constructor
DipStudent::DipStudent()
{
    // default value
    m_theme = NULL;
}
// with params
DipStudent::DipStudent(const char *name, int course, int ID)  : Student(name, course, ID)
{
    // default value
    m_theme = NULL;
}
// one more...
DipStudent::DipStudent(const char *name, int course, int ID, const char *theme) : Student(name, course, ID)
{
    // set theme
    if(theme != NULL)
    {
        try
        {
            m_theme = new char[strlen(theme) + 1];
        }
        catch(...)
        {
            // error
            exit(0);
        } // end of try-catch
 
        strcpy(m_theme, theme);
    } // end of if
}
// destructor
DipStudent::~DipStudent()
{
    // free memory
    if(m_theme != NULL)
    {
        delete [] m_theme;
    } // end of if
}
// set theme
void DipStudent::SetTheme(const char *theme)
{
    // free memory, allocate new block and copy new theme
    if(theme != NULL)
    {
        if(m_theme != NULL)
        {
            delete [] m_theme;
        } // end of if
 
        try
        {
            m_theme = new char[strlen(theme) + 1];
        }
        catch(...)
        {
            // error
            exit(0);
        } // end of try-catch
 
        strcpy(m_theme, theme);
    } // end of if
}
// set ID
void DipStudent::SetID(int ID)
{
    m_ID = ID;
}
 
// show info
void DipStudent::ShowInfo() const
{
    // same as in Student::ShowInfo()
    if((m_name != NULL) && (m_theme != NULL))
    {
        cout << "Name: " << m_name << "\t" << "Course: " << m_course << "\t" << "ID: " << m_ID << "\t" << "Diploma theme: " << m_theme << endl;
    } // end of if
    else
    {
        cout << "Student has no name or diploma theme" << endl;
    } // end of else
}
Добавлено через 7 минут
builder 6 выдает ошибку:
unresolved external`_main` referenced from C:\program files \borland\cbuilder6\lib\c0x32.obj
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 19:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru