用eclipse cdt在C ++中包含一个新文件

时间:2013-04-24 11:24:51

标签: c++ eclipse include eclipse-cdt

很抱歉,如果这是一个重复的问题。 我有eclipse juno,cdt在ubuntu。一个有效的hello world autotools项目。现在我想在另一个文件中使用一个函数,所以我创建了一个one.h和one.cpp并修改了main_hello.cpp:

main_hello.cpp:

#include <iostream>
#include "one.h"

using namespace std;

int main(void) {
        cout << "Hello World" << endl;
        onehello();
        return 0;
}

one.h:

#ifndef ONE_H_
#define ONE_H_
void onehello(void);
#endif /* ONE_H_ */

one.cpp:

#include "one.h"
#include <iostream>
using namespace std;

void onehello(void) {
        cout << "Hello one" << endl;
}

当我构建它时,我得到一个“未定义的引用`onehello()”。如果我在one.h中定义函数而不是one.cpp,它可以工作。 我做错了什么?

谢谢!

1 个答案:

答案 0 :(得分:1)

将one.cpp添加到src / Makefile.am:

该文件中应该是以下行:

some_name_SOURCES = main_hello.cpp

所以,添加one.cpp:

some_name_SOURCES = main_hello.cpp one.cpp