编写主函数,通过调用以上函数实现下面具体操作: 1) 建立一个包括10个student类型的队列; 2) 压入4个student元素进入队列; 3) 删除1个队列元素; 4) 求队列元素个数。
时间: 2024-10-18 09:10:41 浏览: 5
在C++中,你可以创建一个`main`函数来实现这个操作,首先需要定义一个`Student`类和相应的队列结构。这里是一个简单的例子:
```cpp
#include <iostream>
#include <queue>
class Student {
public:
std::string name;
int age;
// 构造函数
Student(const std::string& n, int a) : name(n), age(a) {}
// 显示学生信息
void display() {
std::cout << "Name: " << name << ", Age: " << age << std::endl;
}
};
// 定义队列模板,使用std::queue
template<typename T>
std::queue<T> manageQueue(int size) {
std::queue<T> queue(size);
return queue;
}
int main() {
// 1) 创建包含10个Student类型的队列
std::queue<Student> studentQueue = manageQueue(Student, 10);
// 2) 压入4个student元素
for (int i = 0; i < 4; ++i) {
Student s("Student" + std::to_string(i+1), 20 + i); // 示例数据,实际应用可能有不同的初始化方式
studentQueue.push(s);
s.display(); // 可选:显示刚加入的学生
}
// 3) 删除1个队列元素
if (!studentQueue.empty()) {
Student deletedStudent = studentQueue.front();
studentQueue.pop();
std::cout << "Deleted Student: ";
deletedStudent.display();
} else {
std::cout << "Queue is empty, cannot delete an element." << std::endl;
}
// 4) 求队列元素个数
std::cout << "Current number of students in the queue: " << studentQueue.size() << std::endl;
return 0;
}
```
在这个例子中,我们创建了一个`Student`类,并通过`manageQueue`函数建立了一个大小为10的队列。接着压入了4个`Student`实例到队列中,删除第一个元素并打印剩余元素的数量。
阅读全文