VisualStudio2017笔记

项目文件配置

将 **.h 放 inc/、.cpp 放 src/**,并让编译器正确找到头文件、生成目标文件(.obj)到指定目录,按以下步骤配置(C++ 项目):

目录结构

在项目根目录(.vcxproj 所在文件夹)新建:

1
2
3
4
你的项目/
├── inc/ # 放所有 .h
├── src/ # 放所有 .cpp
└── 项目.vcxproj

常用宏(方便写路径)

  • $(ProjectDir):项目文件夹(.vcxproj 所在)
  • $(SolutionDir):解决方案文件夹
  • $(Configuration):Debug/Release
  • $(Platform):Win32/x64
  • %(Filename):源文件名(不含扩展名)
  • $(IntDir):中间文件的输出目录
  • $(TargetName):生成的主输出文件的基名称

项目配置

检查中间目录设置

  • 确保路径格式为:$(SolutionDir)自定义目录\$(Configuration)\

预编译头输出路径

  • 在 ‌配置属性 → C/C++ → 预编译头 中→ 预编译头输出文件‌:

    • 预编译头输出文件‌ → 修改为:$(IntDir)$(TargetName).pch
    • 预编译头文件‌ → 保持默认pch.h(或检查是否与项目实际名称匹配)
      (关键步骤,确保.pch生成路径与中间目录一致,避免路径冲突)

预编译头使用配置(源文件配置)

  • 打开生成预编译头的源文件(通常是pch.cpp):

    • 右键文件 → ‌属性‌ → ‌预编译头‌ → 选择 ‌创建 (/Yc)‌
  • 其他源文件需设置为 ‌使用 (/Yu)‌

  • (确保仅一个文件创建预编译头,其余文件复用‌)

路径宏必须规范‌:

$(IntDir) 必须包含配置名(如\Release\),否则多配置编译会冲突

项目新建筛选器

右键点击源文件或头文件→添加→新建筛选器,如下图所示,其中inc和src就是筛选器:

新建筛选器”(New Filter)是一种‌逻辑分类工具‌,用于在解决方案资源管理器中按功能或模块组织项目文件(如源代码、头文件等),但‌不改变物理磁盘的目录结构‌。

  • 筛选器仅在项目配置文件(.vcxproj.filters)中记录分类关系,不会在磁盘创建实际文件夹。