# VisualStudio相关知识点
## 一、工程创建

### 1.工程相关

- **1.1创建/打开项目**

  - **创建项目**

    (1)选择创建新项目

    <img src="./pictures/创建新项目.png" alt="创建新项目" style="zoom:50%;" />

    (2)选择项目模板

    <img src="./pictures/创建新项目2.png" alt="创建新项目" style="zoom:50%;" />

    (3)配置项目名称和存储地址
    
    <img src="./pictures/创建新项目3.png" alt="创建新项目" style="zoom:50%;" />

- **1.2加载/卸载项目**

  - 选中需要卸载的项目右击，选择移除。

    <img src="./pictures/卸载项目.png" alt="卸载项目" style="zoom:67%;" />

- **1.3设置启动项**

  右击选择需要配置为启动项的项目，选择设为启动项。

  <img src="./pictures/配置启动项.png" alt="配置启动项" style="zoom:67%;" />

- **1.3解决方案相关**

  - **添加项目**

    (1)点击添加新项目

    <img src="./pictures/添加项目.png" alt="创建项目" style="zoom:50%;" />

    (2)根据需要选择项目模板

    <img src="./pictures/添加项目2.png" alt="创建项目" style="zoom:50%;" />

    (3)设置项目名称并创建

    <img src="./pictures/添加项目3.png" alt="创建项目" style="zoom:50%;" />

- **1.4文件相关**

  - **创建/打开文件**

    ![新建文件](./pictures/创建文件.png)

  - **包括/排除文件**

    <img src="./pictures/排除文件.png" alt="排除文件" style="zoom:67%;" />

    

## 二、工程配置
- **2.1解决方案配置**

  - 解决方案配置可以鼠标右键解决方案一项，选择配置管理器打开，配置管理器提供了配置和平台， Debug是方便debug调试的，而Release是能优化程序运行。

  <img src="./pictures/解决方案配置.png" alt="解决方案配置" style="zoom:67%;" />

- **2.2平台配置**

  - 选择编译程序是用什么配置和平台

    <img src="./pictures/平台配置.png" alt="平台配置" style="zoom:67%;" />

- **2.3项目类型配置**

  - 配置输出的文件类型
  - <img src="./pictures/项目类型文件配置.png" alt="项目类型文件配置" style="zoom:67%;" />

- **2.4路径配置**

  - 输出路径配置：目标文件所在的文件目录。

    <img src="./pictures/输出路径配置.png" alt="输出路径配置" style="zoom:50%;" />

  -  头文件路径配置：用于搜索使用第三方库的include文件夹

    <img src="./pictures/头文件路径配置.png" alt="头文件路径配置" style="zoom:50%;" />

  -  源文件路径配置：源文件存放路径

    <img src="./pictures/源文件路径配置.png" alt="源文件路径配置" style="zoom: 50%;" />

  -  库文件路径配置：用于搜索使用第三方库的lib文件夹

    <img src="./pictures/库文件路径配置.png" alt=" 库文件路径配置" style="zoom: 50%;" />

- **2.5宏定义**

  - 宏定义配置

    <img src="./pictures/宏定义.png" alt="宏定义" style="zoom:67%;" />

- **2.6运行库配置**

  - 右键项目名称，打开项目属性页，选择“配置属性”->“C/C++”->“代码生成”->“运行库”。


  <img src="./pictures/运行库配置.png" alt="运行库配置" style="zoom:67%;" />

- **2.7调用库配置**

  - 首先选择头文件和库目录进行配置，将需要调用的头文件的路径添加进来，添加完之后选择链接器-输入-附加依赖项包含lib文件名称即可对动态库进行调用。

    <img src="./pictures/调用库配置.png" alt="调用库配置" style="zoom:67%;" />

- **2.8安全检查**

  <img src="./pictures/安全检查.png" alt="安全检查" style="zoom:67%;" />

## 三、工程调试
- **3.1断点**

  - 断点创建

    ![断点设置](./pictures/断点设置.png)

  - 断点删除

    ![删除断点](./pictures/删除断点.png)

  - 断点禁用

    ![禁用断点](./pictures/禁用断点.png)

  - 断点启用

    ![启用断点](./pictures/启用断点.png)

  - 条件断点

    <img src="./pictures/条件断点.png" alt="条件断点" style="zoom: 50%;" />

- **3.2窗口**

  - 监视窗口

    <img src="./pictures/监视窗口.png" alt="监视窗口" style="zoom:80%;" />

  - 内存窗口

    <img src="./pictures/内存监视.png" alt="内存监视" style="zoom: 50%;" />

  - 线程窗口

    <img src="./pictures/线程窗口.png" alt="线程窗口" style="zoom:67%;" />

  - 调用堆栈窗口

    <img src="./pictures/调用堆栈.png" alt="调用堆栈" style="zoom:67%;" />

- **3.3单步调试**

  - 全速运行

    ![全速执行](./pictures/全速执行.png)

  - 重新运行

    ![重新运行](./pictures/重新运行.png)

  - 逐过程

    ![逐过程](./pictures/逐过程.png)

  - 逐语句

    ![逐语句](./pictures/逐语句.png)