Sometimes a local variable is used for the sole purpose of checking it in an assert(), like so -
int Result = Func(); assert( Result == 1 );
With C++17 we can do:
[[maybe_unused]] int Result = Func();
though it involves a bit of extra typing compared to a assert substitution. See this answer.
Note: Added this because is the first google hit for "c++ assert unused variable".