C++ Deque::pop_front() 函数



C++ 的 std::deque::pop_front() 函数用于从 deque 中移除第一个元素,从而将其大小减少一个。它不返回移除的元素。调用此函数后,所有剩余元素都将向前面移动一个位置。

当我们尝试在空 deque 上调用 pop_front() 函数时,会导致未定义的行为。

语法

以下是 std::deque::pop_front() 函数的语法。

void pop_front();

参数

它不接受任何参数。

返回值

此函数不返回任何内容。

异常

在空 deque 上调用此函数会导致未定义的行为。

时间复杂度

此函数的时间复杂度为常数,即 O(1)

示例

在以下示例中,我们将考虑 pop_front() 函数的基本用法。

#include <iostream>
#include <deque>
int main()
{
    std::deque<char> A = {'A', 'B', 'C', 'D'};
    A.pop_front();
    std::cout << "After pop_front(): ";
    for (char n : A) std::cout << n << " ";
    std::cout << std::endl;
    return 0;
}

输出

以上代码的输出如下:

After pop_front(): B C D 

示例

考虑以下示例,我们将处理空 deque。

#include <iostream>
#include <deque>
int main()
{
    std::deque<int> a;
    if (!a.empty()) {
        a.pop_front();
    } else {
        std::cout << "Deque is empty, cannot perform pop_front()." << std::endl;
    }
    return 0;
}

输出

以上代码的输出如下:

Deque is empty, cannot perform pop_front().

示例

在以下示例中,我们将执行元素的条件移除。

#include <iostream>
#include <deque>
int main()
{
    std::deque<int> a = {01,12,23,34,45};
    while (!a.empty() && a.front() < 23) {
        a.pop_front();
    }
    for (int n : a) {
        std::cout << n << ' ';
    }
    return 0;
}

输出

如果我们运行以上代码,它将生成以下输出:

23 34 45 
deque.htm
广告