当前位置:首页 > 服务端 > 消除未使用变量的警告

消除未使用变量的警告

#ifndef NEARGYE_NSTD_UNUSED_HPP
#define NEARGYE_NSTD_UNUSED_HPP

namespace nstd {

// Function with varying number of arguments to avoid "unused variable" warnings.
template<typename... Args>
#if defined(__cpp_constexpr) && __cpp_constexpr >= 201304L
constexpr
#else
inline
#endif
void unused(const Args &...) noexcept
{}

} // namespace nstd

#if defined(_MSC_VER)
// Macro with varying number of arguments to avoid "unused variable" warnings.
#  define NSTD_UNUSED(...) ((void)(__VA_ARGS__))
#else
// Macro with varying number of arguments to avoid "unused variable" warnings.
#  define NSTD_UNUSED(...) (decltype(::nstd::unused(__VA_ARGS__))())
#endif

#endif // NEARGYE_NSTD_UNUSED_HPP
#include "unused.hpp"

void foo_unused(int i) {
  NSTD_UNUSED(i); // No warning: NSTD_UNUSED parameter 'i'.
}

int main() {
  int a = 0;
  float b = 0.0f;
  char c[] = "test";
  NSTD_UNUSED(a, b, c); // No warning: NSTD_UNUSED variable 'a', 'b', 'c'.

  int d = 0;
  NSTD_UNUSED(d); // No warning: NSTD_UNUSED variable 'd'.

  return 0;
}

或者使用以下更简便的形式

/** \brief Utility function to eliminate unused variable warnings. */
template<typename ...T> void
ignore(const T&...)
{
}

作者:卡尔的思索
来源链接:https://www.cnblogs.com/sunwenqi/p/16268073.html

版权声明:
1、Java侠(https://www.javaxia.com)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。





本文链接:https://www.javaxia.com/server/125609.html

标签: unused variable
分享给朋友:

“消除未使用变量的警告” 的相关文章

[C#]richtextbox实现行号2022年05月17日 20:27:54
计算机组成原理考试复习2022年05月18日 15:56:51
配置 yum 源的两种方法2022年05月19日 19:54:29
Python 图2022年05月20日 21:30:06
Dart微基准测试第一部分2022年05月23日 20:48:42
python中循环的技巧2022年05月23日 21:49:36
实习篇之关于交际2022年05月23日 23:11:35