std::deque<T,Allocator>::end, std::deque<T,Allocator>::cend
来自cppreference.com
iterator end(); | (1) | (C++11 起为 noexcept) (C++26 起为 constexpr) |
const_iterator end()const; | (2) | (C++11 起为 noexcept) (C++26 起为 constexpr) |
const_iterator cend()constnoexcept; | (3) | (C++11 起) (C++26 起为 constexpr) |
返回指向 *this 的尾后元素的迭代器。
返回的迭代器仅表现为哨位。不保证它可解引用。
目录 |
[编辑]返回值
指向尾后元素的迭代器。
[编辑]复杂度
常数。
注解
libc++ 将 cend()
向后移植到 C++98 模式。
[编辑]示例
运行此代码
#include <algorithm>#include <iostream>#include <numeric>#include <string>#include <deque> int main(){std::deque<int> nums{1, 2, 4, 8, 16};std::deque<std::string> fruits{"orange", "apple", "raspberry"};std::deque<char> empty; // 打印 deque。std::for_each(nums.begin(), nums.end(), [](constint n){std::cout<< n <<' ';});std::cout<<'\n'; // 求和 deque nums 中的所有整数(若存在),仅打印结果。std::cout<<"求和 nums: "<<std::accumulate(nums.begin(), nums.end(), 0)<<'\n'; // 打印 deque fruits 中的第一个水果,不检查是否有一个。if(!fruits.empty())std::cout<<"第一个水果: "<<*fruits.begin()<<'\n'; if(empty.begin()== empty.end())std::cout<<"deque 'empty' 确实是空的。\n";}
输出:
1 2 4 8 16 求和 nums: 31 第一个水果: orange deque 'empty' 确实是空的。
[编辑]参阅
(C++11) | 返回指向起始的迭代器 (公开成员函数) |
(C++11)(C++14) | 返回指向容器或数组结尾的迭代器 (函数模板) |