Let us see the Stack Implementation using Single Inheritance.
Stack Implementation using Single Inheritance in C++
#include<iostream> using namespace std; class stackdata{ protected: int stackarray[4],top; stackdata() { top=-1; } ~stackdata() { "Stack destructed!\n"; } }; class stackfunction:public stackdata{ public: void push(int n) { if (top==3) cout<<"Stack overflow\n"; else { top++; stackarray[top]=n; } } void pop() { if (top==-1) cout<<"Stack underflow\n"; else { cout<<stackarray[top]<<" popped successfully\n"; top--; } } void display() { if(top==-1) cout<<"Stack empty\n"; else { for (int i=0;i<=top;i++) cout<<"Value "<<i+1<<": "<<stackarray[i]<<endl; } } }; int main() { stackfunction s1; char ch; do{ cout<<"Press...\n" <<"1 to push\n" <<"2 to pop\n" <<"3 to display\n" <<"4 to exit\n\n"; cin>>ch; switch(ch) { case '1': int n; cout<<"Enter element\n"; cin>>n; s1.push(n); break; case '2': s1.pop(); break; case '3': s1.display(); break; } } while(ch!='4'); return 0; }
Output