要自定義C++ deque,您可以創建一個新的類,并在其中實現deque的功能。以下是一個簡單的示例:
#include <iostream>
#include <vector>
template <typename T>
class CustomDeque {
private:
std::vector<T> data;
public:
void push_back(const T& value) {
data.push_back(value);
}
void push_front(const T& value) {
data.insert(data.begin(), value);
}
void pop_back() {
if (!data.empty()) {
data.pop_back();
}
}
void pop_front() {
if (!data.empty()) {
data.erase(data.begin());
}
}
T& front() {
return data.front();
}
T& back() {
return data.back();
}
bool empty() {
return data.empty();
}
size_t size() {
return data.size();
}
};
int main() {
CustomDeque<int> myDeque;
myDeque.push_back(1);
myDeque.push_back(2);
myDeque.push_front(0);
std::cout << "Front element: " << myDeque.front() << std::endl;
std::cout << "Back element: " << myDeque.back() << std::endl;
myDeque.pop_front();
myDeque.pop_back();
std::cout << "Size of deque: " << myDeque.size() << std::endl;
return 0;
}
在這個例子中,我們創建了一個名為CustomDeque的自定義deque類。我們使用std::vector作為內部數據結構,并實現了push_back、push_front、pop_back、pop_front、front、back、empty和size等功能。您可以根據自己的需求自定義deque的功能。