【发布时间】:2020-06-16 11:22:41
【问题描述】:
当变量的使用取决于预处理器指令(#if,#else ...)条件时,如何修复“-Wunused-parameter”警告。
void foo(std::string& color)
{
#ifdef PRINT
printf("Printing color: ", color);
#endif
}
我见过 (void) like 的用法:
void foo(std::string& color)
{
#ifdef PRINT
printf("Printing color: ", color);
#else
(void)color;
#endif
}
这是正确的方法吗?
[注]:这里提到的例子是我实际用例的一个非常低级的说明。
【问题讨论】:
-
如果可能的话,我建议您使用正常的 if 条件。这当然要求
PRINT始终定义为真值或假值。
标签: c++ c++11 c++14 c-preprocessor compiler-warnings