# VisualStudio相关知识点 ## 工程创建 ### 工程相关 #### 创建/打开项目 1. 打开vs2022,选择创建`新项目`,选择`控制台`项目 ![image-20250709094808484](./pictures/image-20250709094808484.png) 2. 给项目起一个名字 点击`创建` ![image-20250709094954912](./pictures/image-20250709094954912.png) 3. 创建成功的界面 ![image-20250709095131841](./pictures/image-20250709095131841.png) #### 加载/卸载项目 1. **加载项目**:在资源管理器上右键选择`添加`>`现有项目`选择创建的C++的项目 ![image-20250709095855890](./pictures/image-20250709095855890.png) 资源管理器中已经有两个项目 ![image-20250709100041991](./pictures/image-20250709100041991.png) 2. **卸载项目**:右键所需要卸载的项目点击卸载项目 ![image-20250709100156150](./pictures/image-20250709100156150.png) 显示已经被卸载 ![image-20250709100310479](./pictures/image-20250709100310479.png) ps:如果想要隐藏想要卸载的项目可以在资源管理器上右键选择`隐藏所卸载的项目` #### 设置启动项 想要那个项目作为启动项可以在这个项目上面右键选择`设置为启动项` ![image-20250709100701091](./pictures/image-20250709100701091.png) ### 解决方案相关 #### 添加项目 在解决方案上右键选择`添加`>`添加新建项`就会跳到创建项目界面,参考上面的[创建/打开项目](#创建/打开项目) ![image-20250709101356150](./pictures/image-20250709101356150.png) ### 文件相关 #### 创建/打开文件 ![image-20250710193728183](./pictures/image-20250710193728183.png) #### 包括/排除文件 ![image-20250710193746629](./pictures/image-20250710193746629.png) ## 工程配置 ### 解决方案配置 可以选中`Debug`和`Relase`版本 点击`属性`>`配置管理器`选择配置 ![image-20250710193859886](./pictures/image-20250710193859886.png) ### 平台配置 点击`属性`>`平台`可以选择x64和win32 ![image-20250710182225697](./pictures/image-20250710182225697.png) ### 项目类型配置 在需要配置的项目右键点击`属性`>`配置类型`可以选择exe和dll和lib ![image-20250710182341784](./pictures/image-20250710182341784.png) ### 路径配置 * 输出路径配置 点击`属性`>`常规`>`输出目录` ![image-20250709122232508](./pictures/image-20250709122232508.png) * 头文件路径配置 ![image-20250710182812661](./pictures/image-20250710182812661.png) * 源文件路径配置 ![image-20250710185808699](./pictures/image-20250710185808699.png) * 库文件路径配置 ![image-20250710185824334](./pictures/image-20250710185824334.png) ### 宏定义 右键项目属性点击`C/C++`>`预生成器`>`点击预处理器定义` ![image-20250709123345719](./pictures/image-20250709123345719.png) ### 运行库配置 1. **多线程调试 (/MTd)** - 静态链接调试版运行库,生成的可执行文件独立运行,但体积较大。 - 适用于调试环境,无需依赖外部 DLL。 2. **多线程 (/MT)** - 静态链接发布版运行库,生成的文件同样独立运行,但不含调试信息。 - 适用于发布版本,减小依赖。 3. **多线程调试 DLL (/MDd)** - 动态链接调试版运行库,依赖系统或项目目录中的调试 DLL(如 `msvcrtd.dll`)。 - 适用于调试环境,减小可执行文件体积。 4. **多线程 DLL (/MD)** - 动态链接发布版运行库,依赖系统或项目目录中的发布 DLL(如 `msvcr120.dll`)。 - 适用于发布版本,多个程序可共享同一 DLL。 ![image-20250710185938310](./pictures/image-20250710185938310.png) ### 调用库配置 1. 配置静态库的头文件选择`属性`>`C/C++`>`附加包含目录`将头文件目录配置上去 ![image-20250709191548096](./pictures/image-20250709191548096.png) 2. 配置静态库的所在位置,选择`属性`>`链接器`>`常规`>`附加库目录`配置其所在路径 ![image-20250709191834414](./pictures/image-20250709191834414.png) 3. 配置静态库的所在位置,选择`属性`>`链接器`>`输入`>`附加依赖项`配置其名字 ![image-20250710190647504](./pictures/image-20250710190647504.png) ### 安全检查 右键点击项目 > `属性` >`C/C++` >`代码生成`>`安全检查`选择是否启用 ![image-20250710184417173](./pictures/image-20250710184417173.png) ## 工程调试 ### 断点 #### 断点创建 在最左侧侧边栏,出现红点就说明断点添加成功 ![image-20250709130209401](./pictures/image-20250709130209401.png) #### 断点删除 再次点击断点,即可删除 #### 断点禁用,启用 右键断点,即可选择是否启动,禁用断点 ![image-20250709130411051](./pictures/image-20250709130411051.png) #### 条件断点 右键断点选择条件断点,设置条件为`i == 5`,表示当i=5时才会命中断点 ![image-20250709130839975](./pictures/image-20250709130839975.png) 运行程序就会发现当输出5边时候会命中断点 ![image-20250709131410721](./pictures/image-20250709131410721.png) ## 窗口 ### 监视窗口 点击上方`调试`>`窗口`>`监视` 可以选择监视窗口,也可以选择下方的自动窗口 ![image-20250709133727219](./pictures/image-20250709133727219.png) ### 内存窗口 点击上方`调试`>`窗口`>`内存` 可以选择 ![image-20250709133920706](./pictures/image-20250709133920706.png) ### 线程窗口 点击上方`调试`>`窗口`>`线程` 可以选择 ![image-20250709134545386](./pictures/image-20250709134545386.png) ### 调用堆栈窗口 点击上方`调试`>`窗口`>`调用堆栈` 可以选择 ![image-20250709134732035](./pictures/image-20250709134732035.png) ## 单步调试 ### 全速运行 全速运行就是不命中断点,点击上方`调试`>`开始执行(不调试)`> ![image-20250709135300740](./pictures/image-20250709135300740.png) ### 重新运行 快捷站是`ctrl+shfit+F5` ![image-20250709135437137](./pictures/image-20250709135437137.png) ### 逐过程 快捷站是`F10` ![image-20250709135530768](./pictures/image-20250709135530768.png) ### 逐语句 快捷站是`F11` ![image-20250709135551916](./pictures/image-20250709135551916.png)