读书人

unresolved external symbol解决思路

发布时间: 2012-02-19 19:43:39 作者: rapoo

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);
}

读书人网 >C++

热点推荐