Следующий пост -

Распечатка содержимого stack.

Рубрика: C++, Дата: 16 June, 2013, Автор:

Располагая объектом типа stack, распечатайте по порядку его элементы (не изменяя содержимое самого стека).

Я все таки изменил содержимое стека, а потом заново загнал стек. Да как то в std::stack нету ни итераторов ни operator[]() я даже не знаю как к нему подступится, поэтому сделал не долго думая.

#include <iostream>
using std::cout;
using std::endl;
#include <stack>
using std::stack;
#include <vector>
using std::vector;

int main()
{
	stack<int> s;
	stack<int> s2;
	for(int i=0;i<4;i++)
		s.push(i*10);

	//racpechataem po por9dky
	//без изменения содержимого стека
	while(!s.empty())
	{
		cout <<s.top()<<endl;
		s2.push(s.top());
		s.pop();
	}

	while(!s2.empty())
	{
		s.push(s2.top());
		s2.pop();
	}

	cout <<"s.top()= "<<s.top()<<endl;

	return 0;
}

[youtube]http://www.youtube.com/watch?v=PGuhKdNHSyQ[/youtube]

rss