How to define and use queue class with front, pop, empty and initializer_list in C++

1 Answer

0 votes
#include <iostream>
#include <deque>

using std::cout;
using std::endl;
using std::deque;

template <class T, class container = deque<T> >
class CQueue {
	container values;
public:
	explicit CQueue(std::initializer_list<T> il) : values(il) {}
	T front() const { return values.front(); }
	void pop() { values.pop_front(); }
	bool empty() const { return values.empty(); }
};

int main() 
{
	CQueue<int> q{ 1, 2, 3, 4, 5, 6 };

	while (!q.empty()) {
		cout << q.front() <<  ' ';
		q.pop();
	}

	cout << endl;

	return 0;
}


/*
run:

1 2 3 4 5 6

*/

 



answered May 11, 2018 by avibootz

Related questions

1 answer 189 views
1 answer 282 views
1 answer 193 views
1 answer 231 views
...