#include<iostream>
#include<stack>
using namespace std;
int main(){
stack<int> stk;
int i;
int key=0;
cout<<"Input digits, edn of input is value -1: ";
while(1==1){
cin>>key;
if(key==-1) break;
stk.push(key);
}
while(!stk.empty()){
i = stk.top();
cout<<i;
stk.pop();
}
return 0;
system("PAUSE");
}
стеки и классы с++
Код:
в стек вводятся только целые числа, можно ли сделать чтобы в стек вводились классы, и подскажите функции для изменения и удаления верхнего класса?
http://www.cplusplus.com/reference/stl/stack/
[QUOTE=Chaz]
можно ли сделать чтобы в стек вводились классы
[/QUOTE]
Можно, разумеется.
[QUOTE=Chaz]подскажите функции для изменения и удаления верхнего класса[/QUOTE]
Только не верхнего класса, а верхнего элемента. Для удаления - stack :: pop(), Изменения - в стандартном std::stack нет. Дописывайте. Эта операция эквивалентна последовательности соответствующих операций top() - pop() - push().
[QUOTE=Chaz]
можно ли сделать чтобы в стек вводились классы
[/QUOTE]
Можно, разумеется.
Код:
stack<CMyClass> stack;
[QUOTE=Chaz]подскажите функции для изменения и удаления верхнего класса[/QUOTE]
Только не верхнего класса, а верхнего элемента. Для удаления - stack :: pop(), Изменения - в стандартном std::stack нет. Дописывайте. Эта операция эквивалентна последовательности соответствующих операций top() - pop() - push().
Цитата: Alexander92
http://www.cplusplus.com/reference/stl/stack/
Можно, разумеется.
Только не верхнего класса, а верхнего элемента. Для удаления - stack :: pop(), Изменения - в стандартном std::stack нет. Дописывайте. Эта операция эквивалентна последовательности соответствующих операций top() - pop() - push().
Можно, разумеется.
Код:
stack<CMyClass> stack;
Только не верхнего класса, а верхнего элемента. Для удаления - stack :: pop(), Изменения - в стандартном std::stack нет. Дописывайте. Эта операция эквивалентна последовательности соответствующих операций top() - pop() - push().
спасибо)