Closed. This question is off-topic。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
                        
                        5年前关闭。
                                                                                            
                
        
我有一个问题。我有3个文件,foo.h,foo.cpp和main.cpp。

foo.h看起来像:

void goo();


foo.cpp

#include "foo.h"

void goo()
{
    (something)
}


和main.cpp

#include "foo.h"

int main()
{
    goo();
    return 0;
}


这会在此范围内未声明错误“ goo”,但我找不到任何线索为什么会这样。这是链接器错误吗?

最佳答案

您未指定goo()的返回类型。在C语言中,编译器假定它为int goo()。在C ++(您的情况)下,编译器假定它是对goo()的调用,而不是函数原型。

关于c++ - 在此范围内未声明'goo',C++ ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24543698/

10-10 12:38