c++的分文件编写

前言

在C++中,你可以将代码分割成多个文件来提高可维护性和组织性。分割文件有助于将代码模块化,使大型项目更易于管理。以下是C++中关于分文件的一些规则和概念:

理论知识

头文件(Header Files): 头文件通常具有 .h 或 .hpp 的扩展名。它们包含声明(例如类、函数和变量的声明),供其他文件在编译时引用。头文件应该包含防范重复包含的预处理指令,例如头文件保护宏(#ifndef、#define、#endif 预处理指令)来防止重复包含。头文件只应该包含声明,不应该包含实现。

源文件(Source Files): 源文件包含实现,通常具有 .cpp 的扩展名。这里是实际代码的地方,包括函数和类的实现。源文件包含头文件并提供实现细节。每个源文件都可以被独立编译成一个目标文件。

编译单元(Compilation Units): 一个编译单元是一个包含源文件和其相关的头文件的逻辑单元。在大多数情况下,一个编译单元对应一个源文件。编译单元被独立编译成一个目标文件,然后在链接阶段组合在一起。

命名空间(Namespaces): 命名空间是用来避免命名冲突的机制。通过将相关的类、函数等放在一个命名空间中,可以确保它们的名称不会与其他地方的名称冲突。

链接器(Linker): 在编译后,编译器生成了多个目标文件。链接器负责将这些目标文件合并成最终的可执行程序。链接器解决符号引用,将不同编译单元中的符号关联起来。

分离式编译(Separate Compilation): C++ 支持分离式编译,这意味着你可以将程序分成多个源文件,每个文件可以独立编译。这样,当你修改一个源文件时,只需要重新编译它,而不必重新编译整个项目。

实践

这是我的 c++ 目录

我想要在 hello.cpp 文件下使用 swap.cpp 下的函数
fun.h 文件

复制代码
#include<iostream>

using namespace std;


// 函数的声明
void fun(void);

swap.cpp 文件

复制代码
#include"fun.h"

void fun(void)
{
	cout << "啦啦啦啦" << endl;
}

hello.cpp 文件

复制代码
#include<iostream>
#include<string>
using namespace std;

#include"fun.h"

int main()
{
	fun();
	return 0;
}
相关推荐
博客180015 小时前
酷宝的使用方法,超好用的免费界面库,C++、MFC可用
c++·mfc·界面库·库来帮·酷宝
郝学胜_神的一滴17 小时前
CMake 026:属性体系精讲、四大作用域全解 & 实战代码落地
c++·cmake
众少成多积小致巨1 天前
JNI (Java Native Interface) 技术手册中文参考指南
android·java·c++
clint4565 天前
C++进阶(1)——前景提要
c++
夜悊6 天前
C++代码示例:进制数简单生成工具
c++
郝学胜_神的一滴6 天前
CMake 021: IF 条件判据详诠
c++·cmake
_wyt0016 天前
洛谷 B3930 [GESP202312 五级] 烹饪问题 题解
c++·gesp
LDR0066 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术6 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园6 天前
C++20 Modules 模块详解
java·开发语言·spring