std::deque
是 C++ 标准库中的一个容器,它实现了双端队列(double-ended queue),可以在其前端和后端高效地进行元素的插入和删除操作。
以下是 std::deque
的一些基本用法:
包含头文件:首先,你需要包含 <deque>
头文件来使用 std::deque
。
#include <deque>
创建 deque:你可以使用不同的方式来创建一个 std::deque
。
std::deque<int> d1; // 创建一个空的 int 类型的 deque
std::deque<int> d2(5); // 创建一个包含 5 个默认初始化元素的 int 类型的 deque
std::deque<int> d3(5, 42); // 创建一个包含 5 个值为 42 的元素的 int 类型的 deque
访问元素:你可以使用 []
运算符或者 at()
函数来访问 std::deque
中的元素。
int first_element = d2[0];
int second_element = d2.at(1);
添加元素:你可以使用 push_back()
、push_front()
、emplace_back()
和 emplace_front()
函数向 std::deque
的尾部和头部添加元素。
d1.push_back(1);
d1.push_front(0);
d1.emplace_back(2); // 与 push_back() 相同,但更高效
d1.emplace_front(-1); // 与 push_front() 相同,但更高效
删除元素:你可以使用 pop_back()
和 pop_front()
函数从 std::deque
的尾部和头部删除元素。
d1.pop_back();
d1.pop_front();
获取 deque 大小:你可以使用 size()
函数来获取 std::deque
中的元素数量。
size_t size = d1.size();
检查 deque 是否为空:你可以使用 empty()
函数来检查 std::deque
是否为空。
bool is_empty = d1.empty();
遍历 deque:你可以使用范围 for 循环或迭代器来遍历 std::deque
中的元素。
// 使用范围 for 循环
for (const auto& element : d1) {
std::cout<< element << " ";
}
// 使用迭代器
for (auto it = d1.begin(); it != d1.end(); ++it) {
std::cout << *it << " ";
}
这些是 std::deque
的一些基本用法。你可以根据需要进一步了解和使用它的其他成员函数和特性。