在eclipse中包含一个新文件在C++中cdt
问题描述:
对不起,如果这是一个重复的问题。 我有eclipse juno,在Ubuntu的CDT。 hello world autotools项目的工作。现在我想用另一个文件中的功能,所以,我创建了一个one.h和one.cpp和修改main_hello.cpp:在eclipse中包含一个新文件在C++中cdt
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,它会起作用。 我在做什么错?
谢谢!
答
one.cpp添加为src/Makefile.am:
它应该在这个文件中的下面一行:
some_name_SOURCES = main_hello.cpp
所以,加one.cpp:
some_name_SOURCES = main_hello.cpp one.cpp
您需要将'one.cpp'作为源文件添加到'makefile'中。 – lapk 2013-04-24 11:32:35