【发布时间】:2012-03-16 11:52:21
【问题描述】:
发出“未引用的形式参数”警告的原因是什么?在an existing SO post 中,此警告被解释为有助于将程序员的注意力吸引到函数上(以防他忘记对参数进行某些操作),也有助于代码维护(向未来的开发人员发出信号表明该参数是没有省略,而是故意省略了)。除了样式问题,为什么程序员想要警告未使用的参数?如果按值传递,这些参数是否被复制?
void myFunction(int param) {
}
【问题讨论】:
-
如果是传值,则被复制。
-
你可以去掉
param,所以你只剩下void myFunction(int),尽管这可能会让人困惑。有时你会看到注释掉的参数void myFunction(int /*param*/),但我不愿意在 C++ 代码库中使用 C 风格的 cmets。
标签: c++ compiler-construction compilation