unresolved external symbol
大家好,我有两个.h文件A,B, A包含B,但是编译的时候说unresolved external symbol f(...) (定义在B中),这是什么原因阿?
[解决办法]
头文件声明
源文件定义
声明了未定义报那个错
没有找到实现部分也会
模板类声明和实现放在不同的文件也会
[解决办法]
我试过啊,一点问题都没有,不知道你的程序是怎么样的。
// more.h
#ifndef MORE_H_
#define MORE_H_
void f(int a) {
using namespace std;
cout < < "function foo(int) : " < < a < < endl;
}
#endif /*MORE_H_*/
// main.h
#ifndef MAIN_H_
#define MAIN_H_
#include "more.h "
void test();
#endif /*MAIN_H_*/
// main.cpp
#include <iostream>
#include "main.h "
using namespace std;
int main(int argc, char* argv[]) {
cout < < "Hello World! " < < endl;
test();
}
void test() {
f(11);
}