Write a C++ program to implement a queue using linked lists. The program should provide the following functionality:
- Enqueue data into queue
- Dequeue data from queue
- Print data at the front
- Print data at the back
- Print the entire queue
- Check if the queue is empty
- Print the number of elements in the queue
Test your program using at least the following test cases (considering the queue includes integers):
- Check if the queue is empty: Option F.
- Enqueue 7 into the queue: Option A.
- Enqueue 4 into the queue: Option A.
- Check if the queue is empty: Option F.
- Dequeue data form the queue.
- Print the number of elements in the queue: Option G.
- Enqueue 5 into the queue: Option A.
- Print the number of elements in the queue: Option G.
- Check if the queue is empty: Option F.
- Print data at the front: Option C.
- Print data at the back: Option D.
- Print entire queue: Option E.