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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.88
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
#1

STL vector превратить в stack - C++

27.12.2010, 01:56. Просмотров 1135. Ответов 4
Метки нет (Все метки)

Всем привет! немогли бы вы помочь с таким заданием по STL
Построить вектор "колода карт". превратить вектор в стэк, прежде "перетасовав" его..

У меня пока только есть первое предложение
не могу понять, каким образом можно превратить и перетасовать...


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
struct Card
{
 Card(string m, int r);
 bool operator < (const Card &Other)const;
 string mast;
 int rang;
};
    Card::Card(string m, int r)
    {
      mast=m;
      rang=r;
    }
 
bool Card::operator < (const Card &Other) const
{
    return (this->rang < Other.rang);
}
 
 
int _tmain(int argc, _TCHAR* argv[])
{
 
    vector<Card> cards;
 
for (int i=0; i<9; i++)
    cards.push_back(Card("spades",6+i));
for (int i=0; i<9; i++)
    cards.push_back(Card("clubs",6+i));
for (int i=0; i<9; i++)
    cards.push_back(Card("diamond",6+i));
for (int i=0; i<9; i++)
    cards.push_back(Card("hearts",6+i));
 
 
    sort(cards.begin(),cards.end());
    for(int i = 0;i<cards.size();++i)
        cout<<cards[i].mast.c_str()<<' '<<cards[i].rang<<endl;
 
    getchar();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.12.2010, 01:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос STL vector превратить в stack (C++):

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

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

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

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

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

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

4
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
27.12.2010, 02:32 #2
Arl, Превратить - перекинуть в стек объекты. Перетасовать std::random_shuffle
1
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
28.12.2010, 13:29  [ТС] #3
спасибо!
но у меня не работает эта строка, не знаю почему и не могу исправить((

C++
1
cout<<st_cards.top();
выдает ошибку:
error C2679: бинарный '<<': не найден оператор, принимающий правый операнд типа 'Card' (или приемлемое преобразование отсутствует)


как это исправить, помогите, пожалуйста!
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
28.12.2010, 14:29 #4
Arl, Перегрузить оператор вывода в поток для класса Card.

Пример.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class Class
{
public:
   Class():a(0)
   {
   }
   int GetA() const
   {
       return a;
   }
private:
   int a;
};
 
std::ostream& operator <<(std::ostream& os, const Class& one)
{
    os<<one.GetA()<<'\n';
    return os;
}
1
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
28.12.2010, 14:41  [ТС] #5
боже, какие у меня тупые ошбики!! ForEveR, вы меня спасаете! спасибо)
0
28.12.2010, 14:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.12.2010, 14:41
Привет! Вот еще темы с ответами:

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

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

vector STL - C++
class data { public: char path; char net; char metric; int number; // для укаания строки таблици }; class vertex

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


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

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

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