Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
GSman_XVI
0 / 0 / 0
Регистрация: 19.11.2012
Сообщений: 15
#1

Как сделать stl::stack полем класса - C++

22.03.2013, 02:25. Просмотров 655. Ответов 5
Метки нет (Все метки)

Здравствуйте! Столкнулся с такой проблемой - как сделать полем класса какой либо из STL контейнеров или stack?
На такую запись компилятор ругается:
C++
1
2
3
4
5
6
7
class MyClass
{
protected:
    stack<int> stk;
public:
    MyClass();
};
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.03.2013, 02:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как сделать stl::stack полем класса (C++):

Есть ли связь между STL-stack и stack - высокопроизводительная память? - C++
Куча источников, как всегда много отсебятины, в общем я запутался...

Как работать с STL stack - C++
дайте плис ссылки на книжки по STL,а именно интересует stack!

STL STACK как с ним работать? - C++
задача такова: 1. Создать объект-контейнер в соответствии с вариантом задания и заполнить его данными, тип которых определяется...

STACK STL - C++
Будьте добры, обьясните(прокомментируйте) обозначеные строки кода на правильную скобочную последовательность. #include &lt;iostream&gt; ...

STL stack - C++
не мог бы кто нить обьяснить этот код!Гуглил и нашел!не могли бы комменты поставить По идее так должен выводить! Ввод ...

STL vector превратить в stack - C++
Всем привет! немогли бы вы помочь с таким заданием по STL :) Построить вектор &quot;колода карт&quot;. превратить вектор в стэк, прежде...

5
Croessmah
Пришел
Эксперт CЭксперт С++
13771 / 7852 / 894
Регистрация: 27.09.2012
Сообщений: 19,267
Записей в блоге: 3
Завершенные тесты: 1
22.03.2013, 02:29 #2
Цитата Сообщение от GSman_XVI Посмотреть сообщение
На такую запись компилятор ругается:
и что пишет?

Добавлено через 38 секунд
Телепатия:
C++
1
2
3
4
5
6
7
8
#include <stack>
class MyClass
{
protected:
    std::stack<int> stk;
public:
    MyClass();
};
0
GSman_XVI
0 / 0 / 0
Регистрация: 19.11.2012
Сообщений: 15
22.03.2013, 02:35  [ТС] #3
#include <stack> и using namespace std; имеются. Выдает 18 ошибок.
Error 1 error C2143: syntax error : missing ';' before '<'
Error 2 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
Error 3 error C2238: unexpected token(s) preceding ';'
Ну и в таком духе.
0
Croessmah
Пришел
Эксперт CЭксперт С++
13771 / 7852 / 894
Регистрация: 27.09.2012
Сообщений: 19,267
Записей в блоге: 3
Завершенные тесты: 1
22.03.2013, 02:38 #4
Может тогда полностью код покажете?
0
GSman_XVI
0 / 0 / 0
Регистрация: 19.11.2012
Сообщений: 15
22.03.2013, 02:52  [ТС] #5
Показать сам код довольно проблематично, в проекте 20 весьма объемных файлов.
Суть в том что в Header.h у меня записаны все библиотеки, включая #include <stack>, все h файлы описывающие классы, написан using namespace std и #pragma once;
В каждом cpp и h файле подключен этот самый Header.h
Самое странное то, что если я описываю тот же самый класс MyClass в Main.cpp это дело скомпилируется. Если же я описываю класс в файле MyClass.h то при наличии stl контейнера или стека в качестве поля программа не компилится. Хотя подключены все библиотеки.

Ага, даже еще лучше. Если класс со стеком описан в cpp файле то прога компилируется. Если в h файле - нет.
0
ForEveR
В астрале
Эксперт С++
7988 / 4747 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
22.03.2013, 11:10 #6
GSman_XVI, Такого быть не должно. Следовательно где-то у вас некорректные включения файлов. Ищите.
0
22.03.2013, 11:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.03.2013, 11:10
Привет! Вот еще темы с ответами:

реализация stack и dack в STL - C++
я так понимаю, что реализация этих адаптеров основана на vector и list ? Тогда зачем нужен stack, если достаточно dack ?

STL stack, не пойму где ошибка - C++
#include &lt;iostream&gt; #include &lt;stack&gt; #include &lt;string&gt; #include &lt;sstream&gt; using namespace std; bool isOperator(const string&amp;...

STL контейнер stack, содержит пользовательский тип данных - C++
Ошибки при компиляции следующего кода: Файл element.h #ifndef ELEMENT_H #define ELEMENT_H #include &lt;iostream&gt; using namespace...

Создание объекта класса с полем являющимся объектом другого класса - C++
Bill a; cin&gt;&gt;a;//тут я ввел с помощью перегруженного оператора ElementSpiska c; //поля у Spiska(Bill A,int,string,int) ...


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

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

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