我正在按照this的答案来定义带有lambda函数的priority_queue。但是,我要执行以下操作:错误:未评估上下文中的lambda表达式
#include <bits/stdc++.h>
int main()
{
std::priority_queue<
int,
std::vector<int>,
decltype( [](int a, int b)->bool{
return a>b;
})>
q;
}
答案 0 :(得分:7)
您的代码按编写的方式是有效的C ++ 20,但无效的C ++ 11。
decltype
)中不允许使用Lambda表达式。