如何将代码拆分为多个文件

Ver*_*san 4 c++

我想将我的代码分成多个文件。此时我有这样的想法,但每次我需要将库和标头包含到每个文件中。
这是更好的方法吗? 主程序

#include <iostream>
#include <stdio.h>
#include <cstdlib>
#include <conio.h>
#include <string.h>
#include <windows.h>
#include "modules/intro.cpp"
#include "modules/login.cpp"

using namespace std;

int main() {
    introModule();
    login();

    system("pause");
}
Run Code Online (Sandbox Code Playgroud)

简介.cpp

#include <iostream>

using namespace std;

    void introModule() {
        // content of intro file
    }
Run Code Online (Sandbox Code Playgroud)

登录.cpp

#include <iostream>
#include <conio.h>
#include <string.h>
#include <windows.h>
#include "menu.cpp"

using namespace std;


#define ENTER           13
#define BACKSPACE        8


char passInputCharacter;
char password[20];
const char *accessPassword = "123";

int passInputCharacterPosition = 0;

HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);

void login() {
    // content of login file
}
Run Code Online (Sandbox Code Playgroud)

Fra*_*fer 7

您不应包含 cpp 文件,而应仅包含头文件。头文件基本上声明了对应cpp文件的接口。因此,对于每个 cpp 文件,创建一个仅包含函数声明的附加头文件:

简介.h:

void introModule();
Run Code Online (Sandbox Code Playgroud)

登录.h

void login();
Run Code Online (Sandbox Code Playgroud)

然后在cpp文件中包含所需的头文件:

在main.cpp中:

#include "modules/intro.h"
#include "modules/login.h"
Run Code Online (Sandbox Code Playgroud)

在介绍.cpp中:

#include "intro.h"
Run Code Online (Sandbox Code Playgroud)

在登录.cpp中:

#include "login.h"
Run Code Online (Sandbox Code Playgroud)