C ++ ПриоритетC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 C ++ Приоритет

Сообщение Anonymous »

У меня есть следующий ошибочный код, который я пытаюсь скомпилировать в VC2010, но я получаю ошибку C2974 Это происходит только тогда, когда я включаю выражение лямбды, поэтому я предполагаю, что это как -то связано с этим. < /p>

typedef pair
, int> adjlist_edge;
priority_queue< adjlist_edge , vector,
[](adjlist_edge a, adjlist_edge b) -> bool {
if(a.second > b.second){ return true; } else { return false; }
}> adjlist_pq;
< /code>

Я знаю, что форма определения шаблона верна, как < /p>

priority_queue pq;
< /code>

работает, как и ожидалось. Есть идеи, что я делаю не так? Есть ли что -то, очевидно, не так с Lambda, которое выглядит неправильно, что я могу упускать из виду? Спасибо за чтение!


Подробнее здесь: https://stackoverflow.com/questions/580 ... ator-error
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»