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

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

Войти
Регистрация
Восстановить пароль
 
Serg22
103 / 103 / 31
Регистрация: 04.03.2013
Сообщений: 479
Завершенные тесты: 2
#1

STACK STL - C++

20.12.2013, 16:18. Просмотров 812. Ответов 2
Метки нет (Все метки)

Будьте добры, обьясните(прокомментируйте) обозначеные строки кода на правильную скобочную последовательность.
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
#include <iostream>
#include <stack>
#include <string>
using namespace std;
inline bool LeftBracket(char c) //Что значит inline, и что выполняет даная ф-ция?
{
    return ('(' == c || '{' == c || '[' == c);
}
 
inline bool Fit(char lb, char rb)// что выполняет даная ф-ция?
{
    return ('(' == lb && ')' == rb) || ('[' == lb && ']' == rb) || ('{' == lb && '}' == rb);
}
 
int main()
{   string s;
    cout<<"Введите строку";
    cin>>s;
    
    stack<char> stack; 
    for(string::const_iterator it(s.begin()), itEnd(s.end()); it != itEnd; ++it) // обьясните работу цикл пожалуйста, и что значит it?
    {
        if(LeftBracket(*it))
        {
            stack.push(*it);
        }
        else if(Fit(stack.top(), *it))
        {
            stack.pop();
        }
        else
        {
            stack.push(*it);
            break;
        }
    }
    cout << (stack.empty() ? "right" : "wrong") << endl;
    system("pause");
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2013, 16:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос STACK STL (C++):

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

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

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

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

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

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;...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Кудаив
329 / 406 / 24
Регистрация: 27.05.2012
Сообщений: 1,168
Завершенные тесты: 2
20.12.2013, 16:28 #2
Цитата Сообщение от Serg22 Посмотреть сообщение
inline
код функции, по возможности, встраивается в место вызова

Добавлено через 43 секунды
Цитата Сообщение от Serg22 Посмотреть сообщение
inline bool LeftBracket(char c) //Что значит inline, и что выполняет даная ф-ция?
{
* * return ('(' == c || '{' == c || '[' == c);
}
функция проверяет является переданный в функцию символ одной из трех скобочек

Добавлено через 43 секунды
Цитата Сообщение от Serg22 Посмотреть сообщение
inline bool Fit(char lb, char rb)// что выполняет даная ф-ция?
{
* * return ('(' == lb && ')' == rb) || ('[' == lb && ']' == rb) || ('{' == lb && '}' == rb);
}
проверяет являются ли оба переданные символа скобочками
1
Serg22
103 / 103 / 31
Регистрация: 04.03.2013
Сообщений: 479
Завершенные тесты: 2
20.12.2013, 17:12  [ТС] #3
Спасибо.
А что обозначает в даном случае it, и как работает цикл ?)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.12.2013, 17:12
Привет! Вот еще темы с ответами:

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

Как сделать stl::stack полем класса - C++
Здравствуйте! Столкнулся с такой проблемой - как сделать полем класса какой либо из STL контейнеров или stack? На такую запись...

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

STL. Создать объект-контейнер stack и заполнить его данными типа double - C++
Задание: 1. Создать объект-контейнер и заполнить его данными, тип которых определяется вариантом задания. 2. Посмотреть контейнер. 3....


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

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

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