C++ Deque::cend() 函数



C++ 的 std::deque::cend() 函数用于返回指向 deque 末尾的常量迭代器。此迭代器指向最后一个元素之后的那个位置,确保无法通过它修改 deque。cend() 函数以只读方式遍历 deque,提供了一种在不更改其元素的情况下遍历容器的方法。

语法

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

const_iterator cend() const noexcept;

参数

它不接受任何参数。

返回值

它返回一个常量迭代器,该迭代器指向 deque 的末尾元素之后的位置。

异常

此函数从不抛出异常。

时间复杂度

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

示例

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

#include <iostream>
#include <deque>
int main()
{
    std::deque<char> a = {'A', 'B', 'C', 'D'};
    for (auto x = a.cbegin(); x != a.cend(); ++x) {
        std::cout << *x << " ";
    }
    std::cout << std::endl;
    return 0;
}

输出

以上代码的输出如下:

A B C D

示例

考虑另一种情况,我们将反向遍历 deque。

#include <iostream>
#include <deque>
int main()
{
    std::deque<int> a = {1, 22, 333, 4444};
    for (auto x = a.crbegin(); x != a.crend(); ++x) {
        std::cout << *x << " ";
    }
    std::cout << std::endl;
    return 0;
}

输出

以下是以上代码的输出:

4444 333 22 1

示例

在以下示例中,我们将使用常量迭代器和 find() 函数在 deque 中查找元素。

#include <iostream>
#include <deque>
#include <algorithm>
int main()
{
    std::deque<char> a = {'A', 'B', 'C', 'D'};
    auto x = std::find(a.cbegin(), a.cend(), 'B');
    if (x != a.cend()) {
        std::cout << "Element Found : " << *x << std::endl;
    } else {
        std::cout << "Element Not Found." << std::endl;
    }
    return 0;
}

输出

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

Element Found : B
deque.htm
广告