くれなゐの雑記

身の回りの人や自分が困っていたことを記事にしています

priority_queueでclear()をする

競技とかで、priority_queueの中身をclear()したいけどメソッドがない
なので、以下のように書く

priority_queue<int> que;
...
que = priority_queue<int>();

これでもめんどくさいのでこうする

priority_queue<int> que;
...
que = decltype(que)();

以下みたいなの書いとくのもアリかもしれない

#define CLEAR(a) a = decltype(a)();