Как заставить замолчать -дурискую по -видимому на нестабильных значенияхC++

Программы на C++. Форум разработчиков
Anonymous
Как заставить замолчать -дурискую по -видимому на нестабильных значениях

Сообщение Anonymous »

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

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

static_cast(x)
или (void) ).
Когда переменная является изменчивой, это генерирует избыточную нагрузку. это ": < /p>
для gcc", как "Компиляторы: < /p> для c ++ 11:
  • Код: Выделить всё

    std::ignore = ;< /code> < /li>
    < /ul>
    для c ++ 17: < /p>
    
    [[maybe_unused]]< /code> < /li>
    < /ul>
    Решение в C или C ++: < /p>
    
    (void)sizeof aze;
    @davis-herring (не работает на функции, как есть, но может быть сделано для работы с использованием std :: address, который, поскольку c ++ 17 является contexpr, по цене добавления заголовка. В C, формирование указателя, хотя проще).
Указанный:
// compile with gcc -O3 -Wall -wextra
void test() {
int volatile aze = 0;
(void)aze;
}
< /code>

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

test:
mov     DWORD PTR [rsp-4], 0
mov     eax, DWORD PTR [rsp-4]
ret
см. https://godbolt.org/z/cyvxqm3hq


Подробнее здесь: https://stackoverflow.com/questions/796 ... ile-values

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