我只是继承了一些c++代码,这些代码是用一个包含main和其他一些函数的cpp文件编写的。还有一些.h文件包含类及其函数定义。

到目前为止,该程序是使用g++ main.cpp命令编译的。现在我已经将类分离为.h和.cpp文件,我需要使用makefile还是我仍然可以使用g++ main.cpp命令?


当前回答

.h文件将与编译无关…你只关心CPP文件…输入g++ filename1.cpp filename2.cpp main。cpp -o myprogram

意味着你正在编译每个CPP文件,然后将它们链接到myprogram中。

然后运行你的程序。/myprogram

其他回答

在main.cpp之后列出所有其他CPP文件。

ie

g++ main.cpp other.cpp etc.cpp

等等。

或者您可以单独编译它们。然后链接所有结果”。O”文件一起。

您可以使用几个g++命令,然后链接,但最简单的是使用传统的Makefile或其他构建系统:如Scons(通常比Makefile更容易设置)。

要单独编译而不需要链接,你需要添加-c选项:

g++ -c myclass.cpp
g++ -c main.cpp
g++ myclass.o main.o
./a.out

.h文件将与编译无关…你只关心CPP文件…输入g++ filename1.cpp filename2.cpp main。cpp -o myprogram

意味着你正在编译每个CPP文件,然后将它们链接到myprogram中。

然后运行你的程序。/myprogram

如果你想在cpp文件中使用#include <myheader.hpp>,你可以使用:

g++ *.cpp -I. -o out