'咕'没有在这个范围内声明,c ++

时间:2014-07-03 01:43:24

标签: c++ g++

我遇到了问题。我有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'没有在这个范围内宣布,但我找不到任何线索,为什么会发生这种情况。这个链接器错误了吗?

1 个答案:

答案 0 :(得分:1)

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