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
的一些基本用法。你可以根據需要進一步了解和使用它的其他成員函數和特性。