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
廣告