幅優先探索において座標によって侵入コストが均一でない場合に対応するためにプライオリティキューを用いて、
スタート地点からの総移動コスト値(int)を格納する2次元配列と、
それに対応するインデックスとなる座標を格納する構造体(POINT)で実装したいのですが、
ProgrammingPlacePlusというサイトのC++編の「標準ライブラリ」の第12章(priority_queue)のサンプルコードに習って、
使用コンテナがvectorの場合はうまくいくのですが、listにするとコンパイルエラーになってしまいます

int move_cost[256][256];

bool operator >( POINT a, POINT b )
{
return ( move_cost[a.y][a.x] > move_cost[b.y][b.x] );
}

//vector版
std::priority_queue< POINT, std::vector<POINT>, std::greater<POINT> > vector_prio_que;

//list版
std::priority_queue< POINT, std::list<POINT>, std::greater<POINT> > list_prio_que;

初心者ですみません
どうすればlistでも動作させられるのかご教示頂けませんでしょうか