我正在尝试使用stl中的next_permutation进行排列,但是我遇到了错误,我无法弄清楚如何修复它.我试过谷歌搜索,但是当人们使用相同的函数和函数的变量名称时,唯一的结果就出现了,但事实并非如此.
这是错误:
'__comp' cannot be used as a function
这是代码:
struct rectangle{ int n; int h; int w; }; bool check(const rectangle& rect1,const rectangle& rect2){ return rect1.n < rect2.n; } do{ //... } while ( next_permutation(recs.begin(),recs.end(),check) ); // Getting error on this line.
这里是完整的源代码以及示例输入,以防需要http://pastebin.com/eNRNCuTf