生成一段c++代码,代码功能:一个数据队列,同一个队列中能够储存不同类型数据,具备队列基本的插入、取出数据功能
时间: 2023-07-15 07:14:49 浏览: 101
使用c++实现队列基本功能
5星 · 资源好评率100%
好的,请看下面的代码:
```c++
#include <iostream>
#include <queue>
#include <string>
using namespace std;
int main() {
queue<void*> dataQueue;
string str = "Hello, world!";
int num = 123;
double dnum = 3.14;
// 插入数据
dataQueue.push(&str);
dataQueue.push(&num);
dataQueue.push(&dnum);
// 取出数据
void* data;
data = dataQueue.front();
cout << "String data: " << *(static_cast<string*>(data)) << endl;
dataQueue.pop();
data = dataQueue.front();
cout << "Integer data: " << *(static_cast<int*>(data)) << endl;
dataQueue.pop();
data = dataQueue.front();
cout << "Double data: " << *(static_cast<double*>(data)) << endl;
dataQueue.pop();
return 0;
}
```
这段代码实现了一个数据队列,同一个队列中能够储存不同类型数据,具备队列基本的插入、取出数据功能。其中使用了 `queue` 容器来实现队列的操作。为了支持不同类型数据的存储,我们使用了 `void*` 类型的指针来存储数据。在插入数据时,我们将不同类型数据的指针插入队列中;在取出数据时,我们先取出队首元素,然后通过 `static_cast` 进行类型转换,最后输出对应的数据。
阅读全文