自定义队列类模版,实现入队与出队操作并实例化
时间: 2024-03-06 22:51:55 浏览: 78
Java定义队列结构,并实现入队、出队操作完整示例
好的,我可以帮你实现一个简单的队列类模板,包含入队和出队操作。以下是示例代码:
```cpp
#include <iostream>
#include <vector>
template<typename T>
class MyQueue {
public:
MyQueue() {}
~MyQueue() {}
void enqueue(const T& element) {
m_data.push_back(element);
}
T dequeue() {
if (m_data.empty()) {
std::cerr << "Queue is empty!" << std::endl;
exit(1);
}
T front_element = m_data.front();
m_data.erase(m_data.begin());
return front_element;
}
private:
std::vector<T> m_data;
};
// 实例化一个整型队列
int main() {
MyQueue<int> q;
q.enqueue(1);
q.enqueue(2);
q.enqueue(3);
std::cout << q.dequeue() << std::endl;
std::cout << q.dequeue() << std::endl;
std::cout << q.dequeue() << std::endl;
return 0;
}
```
这个队列类模板中,使用了 STL 中的 vector 容器来存储队列元素。enqueue() 方法往队列中添加元素,dequeue() 方法弹出队列中的第一个元素,并返回其值。示例代码中还包含了一个简单的 main() 函数,用于测试整型队列的功能。
阅读全文