C++ CPP-将.h文件和.CPP文件包含到.CPP文件中

C++ CPP-将.h文件和.CPP文件包含到.CPP文件中,c++,compilation,C++,Compilation,我正在做一个新手级的基于文本的游戏。我希望能够创建一个包含读取一些文本的变量的文件。这是给游戏指南的。你有3个类可以选择,我想为每个类创建一个文件:设置级别,等等。能够编程级别不是问题 我想知道如何导入同一文件夹中的一个.cpp文件,以便在另一个文件中调用该文件中的变量 在main.cpp中,我想调用src类中的magic.cpp 我为什么想要这个: 如果在一个.cpp中有10000行代码,我希望能够链接它们 它将为我做什么: 当我的游戏大师魔术师解释游戏时,每节课都会有不同的解释。因此,如果玩

我正在做一个新手级的基于文本的游戏。我希望能够创建一个包含读取一些文本的变量的文件。这是给游戏指南的。你有3个类可以选择,我想为每个类创建一个文件:设置级别,等等。能够编程级别不是问题

我想知道如何导入同一文件夹中的一个.cpp文件,以便在另一个文件中调用该文件中的变量

在main.cpp中,我想调用src类中的magic.cpp

我为什么想要这个:

如果在一个.cpp中有10000行代码,我希望能够链接它们

它将为我做什么:

当我的游戏大师魔术师解释游戏时,每节课都会有不同的解释。因此,如果玩家选择成为魔术师,我可以从魔术师.cpp调用,以提供正确的项目、级别和一些关于在我的游戏中成为魔术师的文字

真希望我描述得足够清楚


谢谢你,内特。

这完全取决于你使用的编译器。例如,如果您使用的是g++,则可以使用以下命令生成输出文件:

g++ MainMethodFile.cpp SecondFile.cpp ThirdFile.cpp -o Output
如果您使用的是visual studio,则每当您编译程序时,它都会自动执行此操作。

您不能包含.cpp文件,只能包含.h文件。通常,应该将要在其他.cpp文件中使用的函数和变量的类定义和声明放在头文件中,将类方法或函数的定义放在.cpp文件中。 这是正确组织代码的一种方法,下面是一个示例:

文件1.h:

file1.cpp:

文件2.h:

file2.cpp:

main.cpp:


为什么不将代码拆分成逻辑的.cpp文件,编译并链接在一起,而不是将它们包含在一个文件中,这真的是一种制作10000行文件的复杂方式?我想这就是我想要做的。一般来说,我对cpp和编程逻辑相当陌生。我想包括我的src文件夹中的一个文件,并使所有变量和内容在另一个cpp文件中可用。对我来说,这只是组织问题。如果您试图在另一个cpp文件中包含一个cpp文件,那么您的设计很糟糕。这就是您应该使用函数、继承或其他方法来重用代码的地方。您知道如何编写使用多个cpp文件的程序吗?这听起来好像你把C++类和游戏类混淆了。您实际上是在寻求关于如何将代码分割成更小的源文件的建议。你关于如何包含cpp文件的问题是对错误答案的追求。真的,只是一个简单的搜索:我在使用代码块。我对这一切都很陌生。所以我不能100%确定我在使用什么编译器。然后简单地添加新的.cpp文件并将代码放入其中。代码块将在编译时自动为您链接它们。是的,我试过了。但每当我调用另一个cpp文件中的变量时,它都会说它没有在这个范围内定义,并且我也会得到一个错误,即int main已经在使用中。您需要做的是:1。创建C++项目。2.添加2个CPP文件3。您只需要将int main函数放在一个文件中。4.在另一个文件中创建一个全局变量,并尝试在main函数中访问它。应该有用,我会试试的。谢谢你的耐心和帮助!你的文件名是什么其实并不重要。我认为你的答案是好的,但你的第一句话不是真的;这真是个坏主意。
class C1 {
    //...
    void method1();
    //...
}
#include "file1.h"

//...

void C1::method1() {
//...
}
class C2 {
    //...
    void method2();
    //...
}
#include "file2.h"

//...

void C2::method2() {
//...
}
#include "file1.h"
#include "file2.h"

int main {
    // You can use classes C1 and C2 here
}