Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/15: Рейтинг темы: голосов - 15, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 02.05.2019
Сообщений: 6
1

Ошибки при компиляции

02.05.2019, 22:56. Просмотров 2926. Ответов 12

Добрый вечер.
начинаю постигать С++
Пытаюсь создать описать стек (вложение ДЗ1).
Использую компилятор MinGW c графической оболочкой Code::Blocks
Проблема в том, что при сборке проекта вываливается ошибка : error: expected unqualified-id before '{' token (скриншот ошибка компиляции)
Подскажите пожалуйста в чем проблема?
Дополнительно прикрепляю :
main.cpp // основное тело программы
TStack.h // файл заголовков класса
TStack.cpp // файл реализаций класса - вот в этом файле валится ошибка
0
Миниатюры
Ошибки при компиляции   Ошибки при компиляции  
Вложения
Тип файла: rar stack.rar (3.1 Кб, 3 просмотров)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.05.2019, 22:56
Ответы с готовыми решениями:

с2079 и с2228 ошибки при компиляции ниже участок кода, с которым праблема и скрины ошибки
// ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ bool game = true; // КЛАССЫ class Me; class mob { public: void...

Ошибка памяти при выполнении, при компиляции не выводит ошибки
ПОмогите плс программа вводит строку символов до точки, а после вычисляет процент согласных в этой...

Ошибки при компиляции
Ошибки: строки 25, 25, 27, 32. Условие задачи: Дан текст, состоящий из предложений, разделяемых...

Ошибки при компиляции
Error 8 error LNK2001: unresolved external symbol "public: virtual void __thiscall...

12
2533 / 1193 / 357
Регистрация: 30.11.2013
Сообщений: 3,817
02.05.2019, 23:00 2
jard, на 24 в конце лишнее `;`
0
0 / 0 / 0
Регистрация: 02.05.2019
Сообщений: 6
02.05.2019, 23:03  [ТС] 3
Убрал на 24 строчке ;
Стало хуже
0
Миниатюры
Ошибки при компиляции  
2533 / 1193 / 357
Регистрация: 30.11.2013
Сообщений: 3,817
02.05.2019, 23:07 4
Лучший ответ Сообщение было отмечено jard как решение

Решение

jard, пробовали перевести ошибку в Google Translate ? Там кажись явно указывает на проблему компилятор
1
0 / 0 / 0
Регистрация: 02.05.2019
Сообщений: 6
02.05.2019, 23:17  [ТС] 5
Добавлено через 2 минуты
Попробовал, вот перевод:
ошибка: ожидаемый неквалифицированный идентификатор перед маркером {{'|
Я не могу понять как ее исправить

Добавлено через 6 минут
Вот Код TStack.сpp:
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
#include "TStack.h"
#include "stdlib.h"
TStack::TStack  (int)
//конструктор по умолчанию
{
    topElem=NULL;//стек пуст
    Count=0;//количество элементов равно 0
    noValue=99999;//задали значение неопределенного элемента
}
TStack::TStack(TStack *Stack)
//конструктор копирования
{
    topElem=NULL;//стек пуст
    Count=0;//номер текущего элемента
    noValue=99999;//задали значение неопределенного элемента
    int a,//значение
        i;//счетчик
    for (i=Stack->getSize();i>0;i--)
    {
        a=Stack->top(i);//извлекаем данные из стека источника
        push(a);//помещаем в сте приемник
    }
}
TStack::TStack(int N);
//конструктор заполнения случайными числами[B] вот в этом блоке ошибка[/B]
{
    int i,                                  //счетчик
        a;                                  //случайное число
    topElem=NULL;                           //стек пуст
    Count=0;                                //номер текущего элемента
    noValue=99999;                          //задали значение неопределенного элемента
    srand(unsigned int(time(NULL)));      //инициализация генератора случайных чисел
    for (i=1;i<=N;i++)                    //цикл заполнения
    {
        a = rand() % 1001 - 500;        //получаем случайное число от -500 до +500
        push(a);                        //поместили в стек
    }
}
TStack::~TStack(void)
//деструктор
{
    while (Count > 0)//удаляем элементы из памяти
        pop();
    topElem=NULL;
}
StackElement *TStack::pointerStack(void) const
//вернуть указатель на стек
{
    return topElem;
}
int TStack::inDefinite(void)
//возвращает неопределенное значение элемента
{
    return noValue;
}
void TStack::push(int val)
//поместить элемент в стек
{
    StackElement* Temp;//указатель на новый узел
    Temp=new StackElement;//выделили память
    Temp->link=NULL;//пока нет связи с другим элементом
    Temp->data=val;//заполнили информационное поле
    if(topElem==NULL)//если это первый элемент
        topElem=Temp;//запомнили указатель на него
    else//последующие элементы
    {
        Temp->link=topElem;//установили связь с предыдущим
        topElem=Temp;//запомнили указатель на введенный
    }
    Count++;//увеличили счетчик
}
 
int TStack::top(void)
//вывод значения элемента стека
{
    if(topElem==NULL)//если стек пуст
        return noValue;//вернули неопределенное значение
    return topElem->data;//вернули значение элемента
}
int TStack::top(int n)
//получение n-ого элемента от вершины стека
{
    if(topElem==NULL)//если стек пуст
        return noValue;//вернули неопределенное значение
    int m=1;//счетчик элементов
    StackElement *ptr=topElem;//указатель чтения стека - в начало
    while (ptr!=NULL)//пока не конец стека
    {
        if (m==n)//если номера совпали
            return ptr->data;//вернули значение элемента
        m++;//увеличили счетчик
        ptr=ptr->link;//перешли к следующему
    }
    return noValue;//вернули неопределенное значение
}
int TStack::pop(void)
//извлечение элемента с удалением его из стека
{
    if(topElem==NULL)//если стек пуст
        return noValue;//вернули неопределенное значение
    StackElement* delptr=topElem;//указатель чтения стека - в начало
    int a=topElem->data;//получили значение элемента
    topElem=topElem->link;//изменили связь
    delete delptr;//удалили из памяти
    Count--;//уменьшили счетчик
    return a;//вернули значение
}
 
void TStack::PrintStack(void)
//вывод стека
{
    if(topElem==NULL)//если стек пуст
        return;//выход
    StackElement *ptr=topElem;//указатель чтения стека - в начало
    while (ptr!=NULL)//пока не конец стека
    {
        cout << ptr->data << " ";//вывод на экран элемента
        ptr=ptr->link;//перешли к следующему
    }
    cout << endl;//перевод строки
}
int TStack::getSize(void) const
//получение номера текущего элемента в стеке
{
    return Count;
}
0
2368 / 1779 / 387
Регистрация: 15.12.2013
Сообщений: 7,544
02.05.2019, 23:58 6
jard, совместите ваши файлы в один, закиньте в онлайн-компилятор и разместите ссылку. Не думаю что многим форумчанам будет интересно разбирать скриншоты с кодом.
1
Продавец времени
3944 / 2226 / 504
Регистрация: 12.03.2015
Сообщений: 11,156
03.05.2019, 00:49 7
Лучший ответ Сообщение было отмечено jard как решение

Решение

Я исправил несколько ошибок. Компиляция проходит успешно, запускать не пробовал, вдруг оно на меня из монитора вылезет и сожрёт?! Сам давай.

Ошибки при компиляции


Кодировка файлов UTF-8, компилятор - mingw-x64.
1
Вложения
Тип файла: 7z thread2446651.7z (3.2 Кб, 1 просмотров)
0 / 0 / 0
Регистрация: 02.05.2019
Сообщений: 6
03.05.2019, 21:20  [ТС] 8
Собрал проект
теперь такая проблема

Актуальный проект, во вложении
0
Миниатюры
Ошибки при компиляции  
Вложения
Тип файла: rar codeblocks.rar (58.5 Кб, 1 просмотров)
0 / 0 / 0
Регистрация: 02.05.2019
Сообщений: 6
03.05.2019, 21:29  [ТС] 9
S_el, подскажи пожалуйста как это можно сделать.

Добавлено через 3 минуты
Verevkin, спасибо все компилица
но теперь проблема другая
Process terminated with status -1073741510 (0 minute(s), 15 second(s))

0
2368 / 1779 / 387
Регистрация: 15.12.2013
Сообщений: 7,544
03.05.2019, 22:23 10
Лучший ответ Сообщение было отмечено jard как решение

Решение

jard, что именно?
Онлайн-компилятор можно взять этот - https://ideone.com/

Совместить файлы?
1. Вначале подключаете заголовочники.
2. Пишите класс, только реализации функций не выносите в отдельный файл а определяете на месте
void method () {}
3. Пишите main куда помещаете код, для демонстрации поведения.
0
Продавец времени
3944 / 2226 / 504
Регистрация: 12.03.2015
Сообщений: 11,156
03.05.2019, 23:23 11
Цитата Сообщение от jard Посмотреть сообщение
но теперь проблема другая
Process terminated with status -1073741510 (0 minute(s), 15 second(s))
Воспользуйся отладчиком. Я не буду это за тебя делать по уважительной причине.
1
0 / 0 / 0
Регистрация: 02.05.2019
Сообщений: 6
05.05.2019, 17:08  [ТС] 12
Verevkin, как с тобой можно связаться по средствам личных сообщений?
Есть небольшое коммерческое предложение
0
Verevkin
05.05.2019, 17:39     Ошибки при компиляции
  #13

Не по теме:

Цитата Сообщение от jard Посмотреть сообщение
Verevkin, как с тобой можно связаться по средствам личных сообщений?
Есть небольшое коммерческое предложение
Коммерческие предложения меня не интересуют. У меня есть постоянная работа, зарплаты с которой мне хватает.

0
05.05.2019, 17:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.05.2019, 17:39
Привет! Вот еще темы с ответами:

Ошибки при компиляции
Если кто желает помочь и разомнуть свои навыки то прошу скомпилировать c++, я сам не смог, много...

Ошибки при компиляции
Вот такие ошибки у меня выдает при компиляции: error: stray ‘\320’ in program error: stray...

Ошибки при компиляции
Добрый день, задача : Занести в массив значения функции f (x, y) = x − y , 0 ≤ x...

Ошибки при компиляции
Привет. Помогите с ошибками разобратся: #include &lt;stdlib.h&gt; #include &lt;iostream&gt; #include...


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

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

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