2 u012947309 u012947309 于 2016.03.09 17:14 提问

C++中queue能存数组吗?

如题
queue searchlist;
queue中存数组,每一个元素是一个二维坐标。这样行吗?
声明okay,但是searchlist.push()就不行了

5个回答

qq423399099
qq423399099   Ds   Rxr 2016.03.09 17:55

你需要声明一个结构体或者类,把他作为queue的元素

 #include<iostream>
#include<queue>
using namespace std;

struct Point
{
    int x;
    int y;
};

int main()
{
    queue<Point> searchlist;
    Point a = {5, 19};
    Point b = {3, 10};
    Point c = {4, 12};
    searchlist.push(a);
    searchlist.push(b);
    searchlist.push(c);
    while(!searchlist.empty())
    {
        Point temp = searchlist.front();
        cout << "[" << temp.x << "," << temp.y << "]" << endl;
        searchlist.pop();
    }
    system("pause");
    return 0;
}
lianshaohua
lianshaohua   2016.03.09 18:33

放指针的指针不就行了?

lx624909677
lx624909677   Ds   Rxr 2016.03.09 21:56

queue<数据类型>

Chenrongsake
Chenrongsake   2016.03.10 10:54

可以的,其实Queue就类似一个数组,一个装东西的容器,就像你可以在数组里放数组一样

John_ToStr
John_ToStr   Rxr 2016.03.10 12:35

不仅仅是数组,只要能称之为对象的东西 ,都是可以的

Csdn user default icon
上传中...
上传图片
插入图片