Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
elloun
0 / 0 / 0
Регистрация: 04.06.2015
Сообщений: 8
1

Исправить ошибки в коде (классы)

22.12.2015, 13:51. Просмотров 191. Ответов 5
Метки нет (Все метки)

есть написанный класс
C++
1
2
3
4
5
6
7
8
9
10
class student
{
protected:
    char registration_num[6];
    char name[20];
    char stbook_ID[6];
    int token;
public:
    student(){};
    ~student(){};
в ".h" файле затем мне необходима эта переменная
C++
1
student st;
в другом ".h" файле, файлы подключены

выбивает ошибки
C++
1
2
Ошибка  37  error C2011: student: переопределение типа "class"  
Ошибка  1   error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "st"
что делать??
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2015, 13:51
Ответы с готовыми решениями:

Шаблонные классы: найти и исправить ошибки в коде
Разбираюсь тут с шаблонами, вроде сделал все как в работающей программе, но не...

Найти причины возникновения ошибок в коде и исправить эти ошибки (классы, алгоритм сортировки)
Привет. Начинаю изучать работу классов и на примере алгоритмов сортировки...

Найти ошибки в коде и исправить эти ошибки (Наследование)
Вот в общем 3 файла, изучаю наследование на примере односвязного и двусвязного...

Найти ошибки в коде и исправить эти ошибки
Есть у меня вот такой код: #include <iostream> using namespace std; ...

Найти ошибки в коде и исправить эти ошибки - C++
Судя по вываливающейся ошибки, идет двойное освобождение памяти. У самого не...

5
Ipshin
0 / 0 / 0
Регистрация: 02.08.2015
Сообщений: 6
22.12.2015, 13:55 2
В .h файле переменная объявяется как
Student *st;

А затем либо инициализируется как st = new Student(); либо передается в конструкторе или сеттере.
0
elloun
0 / 0 / 0
Регистрация: 04.06.2015
Сообщений: 8
22.12.2015, 14:00  [ТС] 3
в этом и проблема что мне инициализировать её не надо, потому что дальше мне надо использова st в функциях
C++
1
file_stream_student.write((char*)&st, sizeof(student));
0
Ipshin
0 / 0 / 0
Регистрация: 02.08.2015
Сообщений: 6
22.12.2015, 14:12 4
Чтобы использовать созданный объект его в любом случае нужно будет инициализировать, хоть статически, хоть динамически (через new).
file_stream_student.write(st->getName(), sizeof(*st));
0
Hikari
Хитрая блондиночка $)
1451 / 964 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
22.12.2015, 14:18 5
В .h файле переменная объявяется как
Student *st;
С маленькой. Си регистрозависим.
student: переопределение типа "class"
Тебе стоит полностью все выложить. Где-то чего-то забыл написать, или лишнего написал.
0
elloun
0 / 0 / 0
Регистрация: 04.06.2015
Сообщений: 8
22.12.2015, 14:55  [ТС] 6
это "student.h"
C++
1
2
3
4
5
6
7
8
9
10
11
class student
{
protected:
    char registration_num[6];
    char name[20];
    char stbook_ID[6];
    int token;
public:
    student(){};
    ~student(){};
}
это "fun.h"
вот объявление перед функцией
C++
1
2
fstream file_stream_student;
student st;
вот функция
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void write_student()
{
    char ch;
    file_stream_student.open("student.dat", ios::out | ios::app);
    do
    {
        st.create_student();
        file_stream_student.write((char*)&st, sizeof(student));
        cout << "\n\nХотите добавить ещё запись..(y / n ? )";
        cin >> ch;
    } while (ch == 'y' || ch == 'Y');
    file_stream_student.close();
}
Добавлено через 2 минуты
не могли бы вы мне помочь, выше написан кусок кода
0
22.12.2015, 14:55
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2015, 14:55

Классы (исправить ошибки)
Исправьте пожалуйста 2 ошибки. Ничего более не надо, просто исправьте. (ошибки...

Исправить ошибки в коде
#include &lt;iostream.h&gt; #include &lt;conio.h&gt; #include &lt;string.h&gt; // ------------...

Исправить ошибки в коде
Пожалуйста помогите исправить ошибки Первая часть кода (вторая в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru