错误:未在此范围内声明'method'

Xit*_*rum 0 c++

在我的Method.h文件中:

int method();
Run Code Online (Sandbox Code Playgroud)

在我的Method.cpp文件中:

int method(){....}
Run Code Online (Sandbox Code Playgroud)

在我的Main.cpp文件中:

method();
Run Code Online (Sandbox Code Playgroud)

在我的Makefile中

EXEC = main
OBJS = Method.o
.PHONY: all
all: $(EXEC)

main: Main.cpp $(OBJS)
$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) $^ -o $@
Method.o : Method.h Method.cpp
Run Code Online (Sandbox Code Playgroud)

当我打电话给make时,它会说

Main.cpp: In function ‘int menu()’:
Main.cpp:26: error: ‘method’ was not declared in this scope
make: *** [main] Error 1
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我哪里错了吗?谢谢!

Bo *_*son 5

您确定在Main.cpp中包含了method.h文件吗?

  • @ user552279:当然可以.这就是头文件存在的原因!编译器甚至不知道调用它的是`make`. (2认同)