忽略定义但是没有使用的变量

2020-05-13  本文已影响0人  云石畅想

defined but not used

boost

#include <boost/core/ignore_unused.hpp>

// boost::ignore_unused(v1, v2, v3);
// boost::ignore_unused<T1, T2, T3>();

int fun( int foo, int bar )
{
    boost::ignore_unused(bar);
#ifdef ENABLE_DEBUG_OUTPUT
    if ( foo < bar )
        std::cerr << "warning! foo < bar";
#endif
    return foo + 2;
}

c++17

https://en.cppreference.com/w/cpp/language/attributes/maybe_unused

[[maybe_unused]] static int a = something();

macro

#define UNUSED(expr) do { (void)(expr); } while (0)

#define UNUSED(expr) (void)(expr)

#ifdef UNUSED
#elif defined(__GNUC__)
# define UNUSED(x) UNUSED_ ## x __attribute__((unused))
#elif defined(__LCLINT__)
# define UNUSED(x) /*@unused@*/ x
#else
# define UNUSED(x) x
#endif
上一篇 下一篇

猜你喜欢

热点阅读