Как правильно разрешить неиспользованное предупреждение, когда экземпляр используется в операторе сгибаC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как правильно разрешить неиспользованное предупреждение, когда экземпляр используется в операторе сгиба

Сообщение Anonymous »

В приведенном ниже коде я получаю предупреждение о компиляции следующего: < /p>

Код: Выделить всё

error: variable 'process_arg' set but not used [-Werror=unused-but-set-variable]
const auto process_arg = [&](const T& arg) -> bool
< /code>
#include 

template 
concept Computable = std::integral || std::floating_point;

template 
bool foo(const double&, Args... args)
{
const auto process_arg = [&](const T& /*arg*/) -> bool
{
return true;
};

if (!(process_arg(args) && ...))
{
return false;
}

return true;
}
live
afaict, это происходит потому, что могут быть вызовы, сделанные в foo () , которые имеют только первоначальный двойной , и никаких других аргументов. PrettyPrint-Override ">

Код: Выделить всё

[[maybe_unused]] const auto process_arg = [&](const T& /*arg*/) -> bool
Вопрос: есть ли более идиоматический способ C ++ для удаления предупреждения, кроме как с использованием wally_unused ?

Подробнее здесь: https://stackoverflow.com/questions/797 ... -a-fold-op
Ответить

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

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

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

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

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