我使用的是XCode 3.2.2中的C++编译器GCC 4.2。我已经注意到,即使没有省略号,编译器也会成功编译方法foo。头文件和方法被正确地声明为foo(),但当我通过文件或程序范围进行查找和替换时,它将遗漏大约2-3%的更改[foo to foo() ]。如果编译器没有给出错误的成功构建,这将不是关键的。我没有发现:foo(任意参数)会发生这种情况。有人有什么解决方案吗?谢谢。
发布于 2010-05-22 16:04:57
从你的问题中不清楚你实际询问的是什么,但如果是函数调用,那么:
void foo() {
}
int main() {
foo(); // valid C++ - call foo
foo; // valid C++ - get a function pointer
}如果你想要一个关于第二次使用foo的警告,用GCC -Wall标志进行编译(在任何情况下你都应该一直使用这个标志)-这将给你:
f.cpp:6: warning: statement is a reference, not call, to function 'foo'
f.cpp:6: warning: statement has no effect发布于 2010-05-24 10:27:48
要通过xcode添加一个GCC旗帜:
https://stackoverflow.com/questions/2887320
复制相似问题