fork download
  1. #include<iostream>
  2. using namespace std;
  3. class Queue{
  4. int arr[100],Front,rear,currSize,maxSize;
  5. public:
  6. Queue(int defaultSize = 7){
  7. Front = 0;
  8. rear = defaultSize-1;
  9. currSize = 0;
  10. maxSize = defaultSize;
  11. arr[maxSize]={0};
  12. }
  13. bool IsFull(){
  14. return currSize==maxSize;
  15. }
  16. bool IsEmpty(){
  17. return currSize==0;
  18. }
  19. void enqueue(int data){
  20. if(!IsFull()){
  21. rear = (rear+1)%maxSize;
  22. currSize++;
  23. }
  24. }
  25. void deqeue(){
  26. if(!IsEmpty()){
  27. Front = (Front+1)%maxSize;
  28. currSize--;
  29. }
  30. }
  31. int getFront(){
  32. return arr[Front];
  33. }
  34.  
  35. };
  36.  
  37. int main(){
  38. Queue q;
  39. for(int i=0;i<6;i++){
  40. q.enqueue(i);
  41. }
  42. q.deqeue();
  43. q.enqueue(8);
  44. while(!q.IsEmpty()){
  45. cout<<q.getFront()<<" ";
  46. q.deqeue();
  47. }
  48. return 0;}
  49.  
  50.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp: In function ‘int main()’:
prog.cpp:43:11: error: cannot bind non-const lvalue reference of type ‘int&’ to an rvalue of type ‘int’
 q.enqueue(8);
           ^
prog.cpp:19:10: note:   initializing argument 1 of ‘void Queue::enqueue(int&)’
     void enqueue(int &data){
          ^~~~~~~
stdout
Standard output is empty