### 源文件

-  **.cpp 或 .cxx 或 .cc ：**C++源文件的扩展名，用于编写C++代码，包含函数、类、变量等定义和实现。
-  **.h 或 .hpp 或 .hxx ：**头文件扩展名，用于声明函数原型、类定义、常量和变量等，以便在多个源文件中共享声明。

### 项目和配置文件

-  **.vcxproj ：**Visual C++项目文件，用于Visual Studio开发环境，包含项目的配置信息、源文件列表、引用等。
-  **.sln ：**解决方案文件，用于组织多个相关的项目，包含项目之间的依赖关系等信息。
-  **CMakeLists.txt ：**使用CMake构建系统时的项目配置文件，用于描述项目的源文件、目标、依赖等信息，可生成不同平台和编译器的项目文件。
-  **Makefile ：**在Unix和类Unix系统中，用于定义编译规则和目标，指定源文件如何编译链接成可执行文件或库。

### 库文件

-  **.lib ：**Windows下的静态库文件，包含已编译的代码和数据，在链接时被直接复制到可执行文件中。
-  **.a ：**Unix和类Unix系统下的静态库文件，作用与Windows下的 .lib 类似。
-  **.dll ：**Windows下的动态链接库文件，包含可在运行时被加载和调用的代码和数据。
-  **.so ：**Unix和类Unix系统下的共享库文件，类似于Windows的 .dll ，在运行时动态链接。

### 可执行文件

-  **.exe ：**Windows下的可执行文件，是编译链接后的最终产物，可在操作系统中直接运行。
- 在Unix和类Unix系统中，可执行文件没有特定的扩展名，但通常具有可执行权限，通过命令行或图形界面启动。