Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

C++ Queue::front() Function



The C++ std::queue::front() function is used with the queue container to access the first element. It returns a reference to the element at the front of the queue without removing it. It is useful for inspecting the next element to be processed in a queue. This function is commonly used in conjunction with push(), pop() and empty() for managing queue operations. The time complexity of this function is constant O(1).

When we try to invoke the front() function on the empty queue it results in the undefined behaviour.

Syntax

Following is the syntax for std::queue::front() function.

reference& front();
const_reference& front() const;

Parameters

This does not accept any parameters.

Return value

This function returns reference to the first element of the queue.

Example

In the following example we are going to demonstrate the usage of front() function.

#include <iostream>
#include <queue>
int main()
{
    std::queue<int> x;
    x.push(1);
    x.push(22);
    std::cout << "Front element: " << x.front() << std::endl;
    return 0;
}

Output

Let us compile and run the above program, this will produce the following result −

Front element: 1

Example

Consider the following example, where we are going to use the front() function within a loop and printing the front element in each iteration and then pops it.

#include <iostream>
#include <queue>
int main()
{
    std::queue<int> x;
    x.push(11);
    x.push(2);
    while (!x.empty()) {
        std::cout << "Front element: " << x.front() << std::endl;
        x.pop();
    }
    return 0;
}

Output

Following is the output of the above code −

Front element: 11
Front element: 2

Example

Let's look at the following example, where we are going to get the front element from empty queue.

#include <iostream>
#include <queue>
int main()
{
    std::queue<int> x;
    if (!x.empty()) {
        std::cout << "Front element: " << x.front() << std::endl;
    } else {
        std::cout << "queue is empty." << std::endl;
    }
    return 0;
}

Output

If we run the above code it will generate the following output −

queue is empty.

Example

Following is the example, where we are going to modify the front element directly using the front() function.

#include <iostream>
#include <queue>
int main()
{
    std::queue<int> x;
    x.push(1);
    x.push(2);
    x.front() = 11;
    std::cout << "Front element: " << x.front() << std::endl;
    return 0;
}

Output

Output of the above code is as follows −

Front element: 11
queue.htm
Advertisements